繁体   English   中英

为什么要使用UIViewController和UIView子类UIResponder?

[英]Why UIViewController and UIView subclass UIResponder?

查看Apple GLPaint示例代码。

我看到PaintingViewController和PaintingView都实现了

- (BOOL)canBecomeFirstResponder {
    return YES;
}

为什么是双重性? 一般来说,难道不应该仅UIView负责处理硬件生成的触摸事件吗? 视图的运行时交互模型中所述

不,有一个简单的例子:

假设您有一个presentedController 然后,即使它仍然可见,也不希望presentingController处理触摸事件。

在事件传递中,视图控制器层次结构非常重要。

请参阅UIViewController文档中的注释:

视图控制器与它管理的视图紧密绑定,并参与了用于处理事件的响应者链。 视图控制器也是UIResponder对象,并插入到视图控制器的根视图和该视图的超级视图之间的响应器链中,该超级视图通常属于另一个视图控制器。 如果视图控制器的所有视图均未处理事件,则视图控制器可以选择处理事件或将其传递给超级视图。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM