当我按完iOS时,textview键盘不会辞职

当我按完iOS时,textview键盘不会辞职,第1张

概述我有一个textview,当我按完后textview开始一个新的行. 我已经实现了这些方法并添加了所有委托 @property (nonatomic, strong) IBOutlet UITextView *textField;-(void)textViewDidEndEditing:(UITextView *)textView //was UITextField{ [self.t 我有一个textvIEw,当我按完后textvIEw开始一个新的行.

我已经实现了这些方法并添加了所有委托

@property (nonatomic,strong) IBOutlet UITextVIEw *textFIEld;-(voID)textVIEwDIDEndEditing:(UITextVIEw *)textVIEw //was UITextFIEld{    [self.textFIEld resignFirstResponder];}- (BOol)textFIEldShouldReturn:(UITextVIEw *)textFIEld{    [textFIEld resignFirstResponder];    return YES;}

我将键盘返回键设置为在属性检查器中完成.
我希望键盘上的完成键可以让第一响应者辞职,但它似乎不起作用.

- (BOol)textVIEw:(UITextVIEw *)textVIEw shouldChangeTextInRange:(NSRange)range replacementText:(Nsstring *)text {    if([text isEqualToString:@"\n"]) {        [textVIEw resignFirstResponder];        return NO;    }    return YES;    // error thrown here saying code will never execute    if(range.length + range.location > textFIEld.text.length){    return NO;}NSUInteger newLength = [textFIEld.text length] + [string length] - range.length;return newLength <= 300;}

我如何添加这两个语句,以便它们可以正常工作而不会出错?

解决方法 添加Delegate UITextVIEwDelegate

@property (nonatomic,strong) IBOutlet UITextVIEw *textFIEld;

在vIEwDIDLoad中写下这一行

textFIEld.delegte = self;

//添加下面的委托方法[代码在Swift中.请找到obj-c方法并编写逻辑,因为我有]

- (BOol)textVIEw:(UITextVIEw *)textVIEw shouldChangeTextInRange:(NSRange)range replacementText:(Nsstring *)text {    if([text isEqualToString:@"\n"]) {        [textVIEw resignFirstResponder];        return NO;    }    if (textFIEld.text.length >= 300) {        return NO;    }    return YES;}
总结

以上是内存溢出为你收集整理的当我按完iOS时,textview键盘不会辞职全部内容,希望文章能够帮你解决当我按完iOS时,textview键盘不会辞职所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1070192.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存