OStack程序员社区-中国程序员成长平台

标题: IOS - 触摸 UIPickerView 时关闭键盘 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 13:54
标题: IOS - 触摸 UIPickerView 时关闭键盘

我正在构建一个转换器应用程序。在主屏幕中,我有一个用于输入数字的文本字段,在文本字段下方有一个选择器 View ,允许用户选择转换参数(例如 kg 到 g)。

当用户点击背景时,我可以使用以下方法隐藏键盘

 (void)touchesBeganNSSet *)touches withEventUIEvent *)event {
 [self.enterInput resignFirstResponder];

但是当我触摸选择器 View 时,键盘并没有隐藏。

我的问题是当用户触摸选择器 View 时如何关闭键盘。



Best Answer-推荐答案


找到解决方案

1) 首先创建一个隐藏的圆形矩形按钮并将类型更改为自定义(适合选择器的大小)。

2) 创建内部 Action 的修饰

 - (IBAction)hiddenButtonToHideKeyboardid)sender {
    [self.enterInput resignFirstResponder];
}

3) 创建键盘出现通知

[[NSNotificationCenter defaultCenter]addObserver:self selectorselector(onKeyboardAppear name:UIKeyboardWillShowNotification object:nil];

4) 创建键盘消失通知

 [[NSNotificationCenter defaultCenter]addObserver:self selectorselector(onKeyboardHide name:UIKeyboardWillHideNotification object:nil];

5) 当键盘出现时使按钮可见

 -(void)onKeyboardAppearNSNotification *)notification
{
    hiddenButtonToHideKeyboard.hidden=NO;
}

6) 键盘消失时隐藏按钮

-(void)onKeyboardHideNSNotification *)notification
{
    hiddenButtonToHideKeyboard.hidden=YES;
}

5) 完成

我不认为这是一个完美的解决方案,但它对我有用

关于IOS - 触摸 UIPickerView 时关闭键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10796657/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4