2010-05-06 66 views
3

我目前有一個UIControl,它有一些子視圖(圖像,標籤)。iPhone UIControl和子視圖

不幸的是,當我使用addTarget等。它不檢測子視圖觸摸。

[myCustomView addTarget:self action:@selector(touchedView:) 
      forControlEvents:UIControlEventTouchUpInside]; 

UIControl是否可以檢測子視圖上的觸摸或我應該以不同的方式接近它。

回答

0

您的方法調用是正確的。

myCustomView應該是被添加的圖像或標籤。

+0

,所以我不得不在遍歷所有的子視圖,並添加目標。 這也意味着他們也必須是UIControl的子類 – 2010-05-06 06:02:43

+0

「所以我必須遍歷所有子視圖並添加目標。」那是對的。我認爲他們必須是UIView的子類,它們是UIControl的超類。 – 2010-05-06 06:18:06

0
[myCustomView setUserInteractionEnabled:YES]; 
21

只是注意,UIControl的所有子視圖不應該接收觸摸事件本身必須userInteractionEnabled設置爲NO,而不是YES(這是默認值)。

所以你必須設置此上的所有標籤,圖像等

我只是碰到了這個,一段時間後:)想通了

+0

非常感謝你,我一直在尋找解決方案,但從未想過它會以這種方式結束。 – iwat 2010-12-14 06:41:21