我正在寫一個簡單的紙牌遊戲,現在我想讓卡點擊它的一部分..我所有的卡都是UIView對象,並且有2個UIImageView用於顯示卡片的背面或正面。我想要處理鼠標點擊,我不知道該怎麼做。有沒有需要添加的界面?謝謝!如何處理UIView中的點擊事件
2
A
回答
6
您可以製作卡片按鈕(可能不是最佳解決方案)並處理代碼中的按鈕事件。你可以在你的卡片或你的超級視圖上使用手勢識別器。您可以將每張卡片製作UIView的一個子類,並覆蓋處理觸摸事件的方法。
或者你可以變得非常棘手,使卡CALayer s,並只處理你的父視圖中的UIResponder事件。當用戶玩你的遊戲時,這最後一個建議可能會讓你在動畫中獲得最大的靈活性。
無論如何,我認爲UIResponder方法是你所追求的。 UIView是UIResponder的子類,所以你必須在你定義的一些子類中實現它們。
1
而不是使用UIImageView
顯示卡,考慮使用UIButtons
(與「自定義」的按鈕類型,所以看到的唯一邊界是圖像的邊界)。然後,您可以將卡片圖像設置爲這些按鈕的圖像。
3
你看過UIGestureRecognizer課嗎?將函數調用鏈接到某種交互是很好的。有不同類型的手勢,水龍頭,滑動,平底鍋。這聽起來像點擊手勢可能會幫助你每次刷卡時都改變UIImageView。
1
只需在圖像下設置自定義按鈕即可。那麼你只需要使圖像不可觸摸。這樣你用你的按鈕連接的方法將在touchevents上執行。
2
@Convolution是正確的:使用UITapGestureRecognizer識別沒有點擊事件的對象的選項卡。這是最簡單和最乾淨的解決方案。
爲了識別點擊而創建子類只有在您創建自定義對象時纔會有回報,您將在很多時間重複使用自定義對象。
相關問題
- 1. 如何處理DataGridViewLinkColumn的點擊事件
- 2. 事件處理中的UIView
- 3. jQuery如何處理點擊事件?
- 4. Android處理點擊事件
- 5. 如何處理圖片點擊按鈕點擊事件
- 6. 你如何處理jQuery插件中的點擊事件?
- 7. 如何在Android中處理recyclerview中的點擊事件?
- 8. 處理ABPersonViewController中的點擊事件;沒有響應點擊
- 9. 如何處理WPF中的鼠標滾輪點擊事件?
- 10. 如何在Android的Listview中處理點擊事件?
- 11. 如何處理jquery中的點擊事件按鈕?
- 12. 如何使用jQuery處理IE8中的點擊事件?
- 13. 如何處理toastr中按鈕的點擊事件?
- 14. 如何處理JavaScript中的點擊事件?
- 15. '點擊()'的click事件處理
- 16. 處理ActionBarDrawerToggle和ActionBar的點擊事件
- 17. 處理點擊事件的問題
- 18. Android的listview處理點擊事件
- 19. 如何處理樹兒童點擊事件的PHP文件?
- 20. 如何在android studio中處理webview點擊事件?
- 21. 如何在Android中處理HTML圖像點擊事件
- 22. 在SmartGWT RibbonBar上處理點擊事件
- 23. Vue.js處理多個點擊事件
- 24. 窗口事件處理請點擊
- 25. 使用jquery處理點擊事件
- 26. PHP點擊事件處理程序
- 27. 點擊事件處理程序
- 28. 點擊事件處理程序
- 29. 如何處理綁定到div的點擊事件而不觸發div單擊事件的div中的錨點
- 30. 如何正確處理Widget上的點擊事件
謝謝,現在對我來說這是最好的解決方案,因爲我想讓用戶點擊時卡片移動爲動畫。 – haxpanel 2012-03-01 10:44:45