做输入时,比如用户登录,输入用户名后,我们需要回车按钮显示为next,可以接着输入密码,然后回车显示为登录或者done。只需要下面几步就可以完成:
1、添加UITextFieldDelegate代理。
<span style="font-size:18px;">@interface EVLoginController : UIViewController<UITextFieldDelegate></span>
2、给需要添加代理的UITextField添加代理自身代理。这里输入框使用IBOutlet外连过来。
//输入框添加输入上浮事件
txtUserphone.delegate = self;
txtUserPassword.delegate = self;
3、修改UITextField输入键盘的回车信息,可以在storyboard中选中输入框,然后在属性面板中,选择Return Key的类型为Next。或者在代码中使用
<pre name="code" class="objc">txtUserphone<span style="font-family: Arial, Helvetica, sans-serif;">.returnKeyType = UIReturnKeyNext; </span>
4、使用代理事件
</pre><pre name="code" class="objc">//处理键盘返回,回车,next键
- (BOOL)textFieldShouldReturn:(UITextField *)textField{
BOOL flag = NO;
if(textField == txtUserphone){
[txtUserPassword becomeFirstResponder];
}else{
flag = YES;
}
return flag;
}
如果有多个文本输入框,可以以此判断,然后每次next下一个文本框获得焦点。最后return yes交给上层处理提交的事件。
文本框用的比较多的还有文本框上浮,多有个文本是,键盘可能会遮挡文本框,可以采用下面的文章进行修改。