模拟Tab键在iOS SDK中按

Bri*_*hal 15 iphone keyboard ios4

当硬件键盘与iOS一起使用时,按Tab键或shift-tab会分别自动导航到下一个或上一个逻辑响应器.有没有办法以编程方式执行相同的操作(即模拟Tab键而不是手动跟踪逻辑顺序)?

Meh*_*tri 9

由于William Niu是对的,但你也可以使用下面解释的代码.

我已经使用过这个并获得了成功.现在考虑一下UITextField的例子......

您可以使用UITextView的委托方法-(BOOL)textFieldShouldReturn:(UITextField*)textField,如下所述.

但在执行此操作之前,您必须以递增顺序为每个UITextField提供标记...(不需要递增顺序,但是对于我的代码它是必需的,您也可以使用递减顺序,但执行此操作时会更改一些代码)

- (BOOL)textFieldShouldReturn:(UITextField *)textField {

    NSInteger nextTag = textField.tag + 1;
    UIResponder* nextResponder = [self.view viewWithTag:nextTag];   
    if (nextResponder) {
        [nextResponder becomeFirstResponder];       
    } else {
        [textField resignFirstResponder];
    }
    return YES;
}
Run Code Online (Sandbox Code Playgroud)

希望这对你有用......

快乐的编码....


Tej*_*udi 0

不确定这是否有帮助,但在 UITextFields 的上下文中,如果您实现UITextFieldDelegate,- (BOOL)textFieldShouldReturn:(UITextField *)textField将在按下软键盘的返回键时被调用。

我尝试直接点击笔记本电脑键盘,它似乎按照您将它们添加到视图的顺序在所有文本字段之间跳转,但没有转到任何其他类型的字段(按钮等) 。

键盘上的按键正在模拟模拟器软键盘上的按键,效果符合预期。