簡體   English   中英

如何從選擇按鈕停止iOS PinchGesture?

[英]How Can You Stop iOS PinchGesture from Selecting Buttons?

我目前正在為iPhone編寫一個iOS應用程序,該應用程序具有一項可動態創建流程圖的特殊功能。 創建的流程圖是一個巨大的可滾動視圖。 流程圖的每個信息節點都包含按鈕,這些按鈕會自動將視圖移動到下一個信息節點。 在任何時間點,用戶都可以使用捏合手勢縮小當前信息節點,並完整地查看流程圖。

我的問題是:我注意到,如果用戶用自己的一根手指在信息節點中的其中一個按鈕上敲擊按鈕來開始這種捏合動作,則該手勢優先,並且下一個節點顯示為與從當前位置縮小的捏合手勢相反節點。

我一直在尋找StackOverflow,並嘗試了幾種方法來解決此問題,但似乎沒有任何效果。 我想知道是否有人遇到過類似的問題,他們是否能夠解決這個問題?

使用@Till的建議,並進一步研究了我的問題,我做了一些對我有用的事情,我認為如果別人有類似問題或願望,我會在這里分享。

我能夠創建可以用作半按鈕的UIView。 對於這些視圖中的每一個,我都優化了UITapGestureRecognizers並將其針對於檢查發送者的狀態是否為StateEnded的方法:

-(void)handleButtonTap:(UITapGestureRecognizer *)sender
{
  if(sender.state == UIGestureRecognizerStateEnded)
    // Go on and do the code here
}

但是,想要保持原始iOS按鈕的外觀,我又走了一步。 對於我創建的每個UIButton,我沒有將目標與這些按鈕相關聯,而是為每個按鈕創建了UIViews。 這些UIView完全空白,背景色為“清除”。 通過這種方式,我現在可以擁有按鈕,但仍然可以獲得所需的功能。

希望這對其他有類似問題的人有所幫助。 再次感謝@Till的建議。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM