2012-06-11 50 views
0

我需要了解如何從父視圖控制器中的視圖中獲取鼠標事件。從父視圖控制器中的視圖中獲取鼠標事件

可以說我有一個視圖控制器,並在許多事情之中它管理點的NSMutableArray。我可以初始化數組並將其傳遞給視圖類,在該視圖類中它將繪製到視圖的 矩形。

如果我在視圖中配置了一些典型的鼠標事件,我可以在視圖 中添加點並讓它們也繪製。

我不明白的是如何將這些信息發送回父視圖控制器,以便它可以將點添加到點數組。

我不知道我是否應該如何重載方法(它們不在控制器中響應),或者如果我可以設置一個委託(我不知道如何爲此做) 。

建議非常感謝,並且一個例子也很棒。

僅供參考這是一個我需要解決的更復雜問題的簡單例子,但解決方案仍然適用。

感謝

回答

0

作爲一個新手到可可,使用自定義的委託仍是國外對我來說,那不過是解決方案。良好的舊對象消息傳遞。

1在你的視圖類 - > id mouseDelagate中創建一個委託。

2使用至少一種方法創建一個簡單的協議類。

3在視圖類中實際的鼠標事件方法。使用 委託[mouseDelegate mouseDidMove:point]調用協議方法(但是您定義了方法)。

4在awakeFromNib文件([viewClass setMouseDelegate:self])中設置視圖控制器類中的委託。

5實現協議方法;

-(void)MouseDidMove{ 

NSLog(@"moving"); 

} 

6記得導入協議在兩個類

相關問題