2
- (BOOL)textFieldShouldReturn:(UITextField *)sender
{
    if(sender.returnKeyType == UIReturnKeyNext){
        // Make something else first responder
    }else if(sender.returnKeyType == UIReturnKeyGo){
        // Do something
    }else{
        [sender resignFirstResponder];
    }
    return YES;
}

我有一个 UITextFieldDelegate 使用它。我是 iPhone 开发的新手。来自网络,我习惯于动态且最小化地定义事件。这是从用户名到密码 UITextFields 的“好的”方式吗?

有更好的常见做法吗?

4

2 回答 2

2

此处已对此进行了广泛讨论:How to navigate through textfields (Next / Done Buttons)

但快速的回答是肯定的,这很好!没什么可笑的。

于 2011-09-18T19:47:24.613 回答
0

如果您将文本字段声明为类的属性,您可以简单地将 sender 与每个文本字段进行比较以确定正确的操作过程。我可能会做这样的事情。

- (BOOL)textFieldShouldReturn:(UITextField *)sender
{
    if (sender == self.firstTextField)
        [self.secondTextField becomeFirstResponder];
    else if (sender == self.secondTextField)
        [self doSomething];
    else
        [sender resignFirstResponder];

    return YES;
}
于 2011-09-18T19:45:02.893 回答