我有一个模态视图,使用UITextView,用户可以输入一些文本(或不输入)并关闭模态视图。没有理由拒绝键盘,因为它没有关闭模态视图(这是故意的),而没有键盘的UITextView看起来很傻。
有没有办法隐藏或删除键盘上的“关闭键盘”键?
答案 0 :(得分:4)
您无法隐藏或删除密钥,但您可以使用UITextViewDelegate
协议将其停用:
- (BOOL)textViewShouldEndEditing:(UITextView *)textView {
return NO;
}
如果UIKit迫使响应者辞职,尽管有代表(可疑,但我没有仔细查看调用堆栈),您可以通过观察UIKeyboardDidHideNotification
并设置第一响应者来强制键盘保持运行状态回到UITextView:[myUITextView becomeFirstResponder]
答案 1 :(得分:0)
协议方法没有帮助。 正如Answerbot建议人们应该听键盘通知。
- (void)onIpadViewWillAppear
{
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(showIpadKeyboard) name:UIKeyboardDidHideNotification object:nil];
}
- (void)onIpadViewWillDisappear
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
}
- (void)showIpadKeyboard
{
[myTextField becomeFirstResponder];
}
这很有效,看起来很漂亮。