【问题标题】:Resign keyboard on 'Done' button of keyboard在键盘的“完成”按钮上退出键盘
【发布时间】:2012-12-27 16:18:52
【问题描述】:

我想在点击键盘上的“完成”按钮时退出键盘。我怎样才能做到这一点?我有以下代码=>

textView.returnKeyType = UIReturnKeyDone;

我有此代码用于限制 textview 中的字符数 =>

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

   if(range.length > text.length)
    {
        return YES;
    }

    else if([[textView text] length]  >= MAX_LENGTH_TEXTVIEW && range.length == 0)
    {
        [textView resignFirstResponder];
        return NO;

    }

    return YES;
} 

如何在单击键盘的“完成”按钮时退出键盘?如果我点击 Done ,它不会辞职,而是会进入下一行(即 \n )。 “完成”方法是否有任何委托方法?我没有从苹果文档中获得“完成”的方法。 请帮助我....提前谢谢....

【问题讨论】:

    标签: iphone uikeyboard iphone-softkeyboard


    【解决方案1】:

    【讨论】:

    • 它是一个 UITextView,而不是一个 UITextField
    • 当答案对 UITextView 不起作用时,为什么会被接受?
    【解决方案2】:

    也许你可以在你的函数中添加另一段代码:

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

    【讨论】:

    • 我试过这个解决方案。但是如果用户想在下一行写,我该如何处理呢?
    • 下一行是@"\r" 或@"\r\n" 你也可以添加这个检查,但据我所知,如果你打开检查换行文本,它会自动去到下一行,以防用户到达 textview 矩形的末尾
    猜你喜欢
    • 2015-04-06
    • 2016-03-19
    • 2011-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-22
    • 2011-02-19
    相关资源
    最近更新 更多