我在視圖中有一個UIButton,並在該按鈕上有一個UILabel
(TTTAttributedLabel)。 (https://github.com/mattt/TTTAttributedLabel)(雖然,這是不相關的TTTAttributedLabel自定義類的直接問題)如何在UIButton中觸發目標?
這與的UILabel觸摸執行一些動作。如果不喜歡觸摸座標將其轉發到超與相應的方法如下:
[super touchesBegan:touches withEvent:event];
[super touchesMoved:touches withEvent:event];
[super touchesEnded:touches withEvent:event];
[super touchesCancelled:touches withEvent:event];
我發現在這種情況下正在按下下面的按鈕。我還看到,UIButton
中的所有這些方法都被完美調用。我也登錄UITouch
對象來查看它們是否匹配。
問題是,設置爲UIButton
的操作未被調用(即使對於UIControlEventTouchDown
)。什麼觸發了這些行爲?我認爲與touchesEnded匹配的touchesBegan應該已經爲目標動作添加了選擇器,並將其添加到該按鈕中。
該按鈕接收觸摸,因爲我將它劃分子類並在觸摸事件中看到NSLog輸出。不知何故,轉發觸摸可能不匹配...但他們似乎匹配的對象ID和座標是相同的日誌。 (我不能直接使用按鈕的title屬性,因爲標籤中有可點擊的單詞。) – frankish