iphone - 如何使用返回键关闭 UITextView 的键盘?

想要改进这篇文章? 提供这个问题的详细答案,包括引用和解释为什么你的答案是正确的。没有足够细节的答案可能会被编辑或删除。

在IB的库中,介绍告诉我们,当按下return键时,UITextView的键盘会消失。但实际上 return 键只能充当'\n'。

我可以添加一个按钮并使用 [txtView resignFirstResponder] 来隐藏键盘。

但是有没有办法为键盘中的 return 键添加操作,这样我就不需要添加 UIButton

最佳答案

我想我会在此处发布代码段:

确保声明支持 UITextViewDelegate 协议(protocol)。

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {

    if([text isEqualToString:@"\n"]) {
        [textView resignFirstResponder];
        return NO;
    }

    return YES;
}

Swift 4.0 更新:

func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
    if text == "\n" {
        textView.resignFirstResponder()
        return false
    }
    return true
}

https://stackoverflow.com/questions/703754/

相关文章:

ios - 核心数据 : Quickest way to delete all instances

ios - 创建模糊叠加 View

ios - 使用 iOS 确定设备(iPhone、iPod Touch)

objective-c - 如何将 NSMutableArray 转换为 NSArray?

ios - iPad 多任务支持需要这些方向

objective-c - 将 block 内的变量分配给 block 外的变量

objective-c - 如何按字母顺序对 NSArray 进行排序?

objective-c - 以编程方式设置 UIButton 标题 UILabel 字体大小

ios - Objective-C ARC : strong vs retain and weak

objective-c - 如果您使用 CocoaPods,您的 .gitignore 会包含什么内