我已经实现了这些方法并添加了所有委托
@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键盘不会辞职所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)