Ste*_*hen 33 objective-c ios ios7
我有一个滚动视图,其中包含UITextField和UITextView.UITextField返回键是"Next",当按下它时,我调用[myTextView becomeFirstResponder]; 一个随机的新行插入到我的textview中,所以我从第二行开始.我该如何避免这种情况?
同样重要的是要注意,当我直接点击UITextView而不是点击下一个键时,这不会发生.
提前致谢!
rma*_*ddy 68
解决这个问题的一个解决方案是当你实现textFieldShouldReturn:委托方法时,一定要返回NO,而不是YES.通过返回NO,换行符不会传递到文本字段.
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
// move to next field or whatever you need
[myTextView becomeFirstResponder];
return NO;
}
Run Code Online (Sandbox Code Playgroud)
Adn*_*tab 11
好的,这种行为是由于iOS中的一个错误,当使用下一个按钮成为同一个运行循环中的第一个响应者时.要完成此操作,您应该手动执行此操作.首先从textFied中退出第一个响应者,然后将textView作为第一个响应者.像这样.实现此委托方法.
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder];
[textView performSelector:@selector(becomeFirstResponder) withObject:nil afterDelay:0.0];
return YES;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4409 次 |
| 最近记录: |