界面构建器中的Tab顺序?

时间:2010-11-23 22:54:47

标签: xcode macos cocoa tab-ordering

也许时间已经很晚了,但我无法找到我可以在界面查看器对话框中设置整体Tab顺序的位置,就像我可以使用Visual Studio一样。

我错过了什么吗? Tab键顺序都是弯曲的。用于模拟的Command-R显示它。

3 个答案:

答案 0 :(得分:38)

您正在寻找的Cocoa术语是“关键视图循环”。使用initialFirstRespondernextKeyView出口按照您要标记的顺序将视图连接在一起。

文档here中提到了这一点。

请注意,可以接收键盘焦点的项目将根据“全键盘访问”设置(在“系统偏好设置”>“键盘”中)进行更改;如果禁用,标签将跳过关键视图循环中的各种项目。

答案 1 :(得分:2)

将出口命名为a,b和c。 Mac默认标签顺序为a -> b -> c -> a

但您所需的标签顺序为a -> c -> b ->a

enter image description here

使用IB:

a设为initialFirstResponder

然后将nextKeyView相应地设置为a to c, c to b and c to a

但我更喜欢使用代码,在这里添加更多代码变得更容易。在复杂的UI中,可能有30多个控件,您可能需要随机播放甚至插入新控件!!!

所以你可以达到以下目的:

[self.a setNextKeyView:self.c];
[self.c setNextKeyView:self.b];
[self.b setNextKeyView:self.a];

答案 2 :(得分:0)

我发现将一组文本字段放在单独的视图中将有助于控制元素获得焦点的顺序。

我在模拟器和iPad上进行了测试。对我来说效果很好。