我对 iPhone 响应者链感到困惑。具体来说,在 iPhone 事件处理指南http://developer.apple.com/iPhone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/EventHandling/EventHandling.html中,我们有以下内容:
第一个响应者是应用程序中的响应者对象(通常是 UIView 对象),它被指定为除触摸事件之外的事件的第一个接收者。
但是 UIView 是 UIResponder 的子类。UIResponder 类参考是这样说的:
- (BOOL)canBecomeFirstResponder
返回值
如果接收者可以成为第一响应者,则为 YES,否则为 NO。讨论
默认返回 NO。如果响应者对象从此方法返回 YES,则它成为第一响应者并可以接收触摸事件和动作消息。子类必须重写此方法才能成为第一响应者。
我对明显的矛盾感到困惑。谁能帮我清理一下?
值得一提的是,我确实设置了一个简单的基于视图的应用程序,并在其视图上调用 canBecomeFirstResponder 和 isFirstResponder。两者都返回NO。