objective-c - 如何将 UIView 放在键盘上方

标签 objective-c ios ipad keyboard

我有一个想法在键盘中隐藏一些键。我使用键盘的确切背景并在键盘上方使用它。

所以我创建了一个 textView 并添加了一个 accessoryView

 //Create the view 
 UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, -10, 768, 300)];
 [view setBackgroundColor:[UIColor greenColor]]

 UITextField text = [[UITextField alloc] initWithFrame:CGRectMake(120, 10, 80, 28)]; 
 [text setKeyboardType:UIKeyboardTypeNumbersAndPunctuation];
 [text setInputAccessoryView:view];

enter image description here
这确实隐藏了键盘,但是如果我在此 View 中单击,该按钮仍会显示。我尝试使用 UIButton,但该按钮没有捕捉到点击。我试试becameFirstResponderUIKeyboardDidShowNotification并没有成功。

有任何想法吗?

最佳答案

您可以设置userInteractionEnabled为您的附件 View 设置为"is"。这将使您的 View 吞噬所有的触摸。

但是,如果您想要自定义 View 进行编辑,您可以通过为您的字段设置特定的编辑 View 来完成此操作,而不是尝试在键盘顶部放置其他内容。

关于objective-c - 如何将 UIView 放在键盘上方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7448297/

相关文章:

ios - 通过在两个图像之间滑动或点击来淡化图像

ios - 如何在没有 App Store 的情况下将 iOS 应用程序安装到任何设备?

iphone - 如何知道用户何时切换响铃/静音(静音)按钮?

iphone - 更新本地通知 BadgeNumber

ios - 开始在 iOS 中使用 Urban Airship

ios - Objective C - 使用 Singleton 的不间断计时器

objective-c - 关于 NSDateComponents 时区

Objective-C 中的 HTML 字符串

ios - UITableView 数据源必须从 tableView : cellForRowAtIndexPath 返回一个单元格

ios - 8 特定应用程序不可用的功能