从父视图控制器中的视图获取鼠标事件



我需要了解如何从父视图控制器中的视图中获取鼠标事件。

假设我有一个视图控制器,其中它管理着一个 NSMutableArray 的点。 我可以初始化数组并将其传递给视图类,它将绘制到视图的矩形。

如果我在视图中

配置了一些典型的鼠标事件,我可以在视图中添加点并让他们也画画。

我不明白的是如何将该信息发送回父视图控制器,以便它可以将点添加到点数组中。

不确定我是否应该对方法进行过载(它们在控制器中没有响应),或者我是否可以设置一个委托(我不知道该怎么做)。

非常感谢建议,一个例子也很棒。

仅供参考,这是我需要解决的更复杂的问题的简单示例,但解决方案仍然适用。

谢谢

作为可可的新手,使用自定义委托对我来说仍然很陌生,但这就是解决方案。好的旧对象消息传递。

1 在视图类中创建一个委托 --> id mouseDelagate。

2 使用至少一个方法创建一个简单的协议类。

3 在视图类中的实际鼠标事件方法中。 调用协议方法委托 [鼠标委托鼠标DidMove: 点 ]。(但是您定义了方法)。

4 在 awakeFromNib 文件的视图控制器类中设置委托([viewClass setMouseDelegate: self]);

5.实现协议法;

 -(void)MouseDidMove{
 NSLog(@"moving");
 }

6 记得在两个类中导入协议

最新更新