UIView是隐藏功能,"视图的下一个有效键视图"手段?

时间:2017-07-06 02:20:26

标签: ios swift uiview

我目前正在研究isHidden课程的UIView方法。

Apple documentation中,它提到了

  

隐藏窗口当前第一响应者的视图导致   视图的下一个有效关键视图将成为新的第一响应者。

我只是想知道,the view's next valid key view意味着什么?

2 个答案:

答案 0 :(得分:1)

导致下一个有效密钥(堆栈的下一个视图)将成为响应者,如果没有任何内容"后面"您隐藏的视图将是超级视图。

答案 1 :(得分:1)

该文档显然遗留在较早的NSView documentation不正确

NSView是iOS的UIView的macOS等价物。 NSView具有nextKeyView属性,指示当用户选中当前视图时,哪个视图应该获得键盘焦点。 NSView还有一个计算属性nextValidKeyView,它是键视图循环中的下一个视图,它接受第一个响应者并且不被隐藏。

UIView没有nextKeyViewnextValidKeyView属性。

此外,在iOS上,隐藏当前第一响应者导致“视图的下一个有效键视图成为新的第一响应者”,对于“下一个有效键视图”的任何合理定义,因为隐藏的视图仍然是第一响应者

这是一个演示,记录在运行iOS 10.3.2的真实iPhone 6(不是模拟器)上。 “按钮”切换顶部文本字段的isHidden属性。

demo

在顶部文本字段中输入“hello”后,点击按钮隐藏该文本字段。键盘仍处于活动状态,但第二个文本字段没有闪烁的插入点。然后我输入“世界”并再次点击按钮。顶部文本字段重新出现,现在它显示“hello world”。当它被隐藏时,它仍然是第一响应者。第二个文本字段(“下一个有效键视图”的唯一可能候选者)没有成为第一响应者。