我添加了一個水龍頭手勢識別器到UICollectionView中,但是當我嘗試將控制拖動到控制器的實現中時,點擊手勢識別器不會添加方法。關於可能發生什麼的任何想法?水龍頭手勢識別器不會對目標動作
回答
以下兩個條件必須滿足:
你必須確保你所指定的子類在Interface Builder(例如,如果把這個方法在您的視圖控制器,請確保您有視圖控制器在Interface Builder中爲您的場景指定的子類);
如果連接動作到現有的,該方法必須在類的必須的
IBAction
(它就像一個void
,但必須指定一個「返回類型」的實施IBAction
否則IB不會讓你連接起來的動作),例如:- (IBAction)handleTap:(UITapGestureRecognizer *)gesture { // do whatever I want to handle the tap here }
如果一個方法
void
或指定的其他一些返回類型,接口生成器不會讓你建立連接。
就個人而言,我開發在Interface Builder中的UI元素,然後再控制拖動到@interface
,讓Interface Builder的實際添加該接口和實現的外殼爲我,然後我的代碼添加到該。
原來我的控制器有錯誤的類,所以我解決了這個問題,現在我可以拖動並創建一個IBAction,但是我仍然無法連接到我的預先存在的Target-Action方法,該方法返回IBAction? – user2076774
@ user2076774每當我偶然發現這些問題時,總是無法正確指定子類或不正確的方法簽名(例如'IBAction'返回類型和一個參數)。沒有看到方法定義或項目,很難說你的項目發生了什麼。如果你在某個地方上傳它,我很樂意看看。 – Rob
嘿所以它似乎是一個Xcode的錯誤,因爲我恢復Xcode,它的工作!儘管如此,您儘可能幫助我,謝謝! – user2076774
- 1. iOS的自制水龍頭手勢識別器
- 2. 用於UICollectionView的長按水龍頭手勢識別器Objective-c
- 3. Swift:長按手勢識別器 - 檢測水龍頭和長按
- 4. IOS swift應用程序不工作時使用水龍頭手勢識別
- 5. 斯威夫特:手勢識別器不註冊龍頭
- 6. 拖動手勢識別器干擾滑動手勢識別器
- 7. 如何以編程方式觸發UIView的水龍頭手勢識別器
- 8. 將手勢識別器添加到tableView標頭不起作用?
- 9. UITableViewCell中的多個水龍頭手勢
- 10. 關於uiscrollview中的水龍頭手勢
- 11. 按鈕水龍頭和長按手勢
- 12. 添加水龍頭手勢到UIStackView
- 13. 如何在Swift3 IOS餅圖中添加水龍頭手勢識別?
- 14. 水龍頭手勢+長按手勢都沒有在一起工作
- 15. UITapGestureRecognizer無法識別水龍頭
- 16. 如何阻止UIPanGestureRecognizer識別水龍頭
- 17. iOS:UIImageView沒有響應動畫之間的水龍頭手勢
- 18. iOS自來水識別器捕捉所有水龍頭
- 19. 如何識別android中的三個手指水龍頭
- 20. Uibutton移動到導航區域時不識別水龍頭
- 21. UIImage不會識別點按手勢Swift
- 22. Pan手勢識別器對於Android?
- 23. 滑動手勢識別UIWebView
- 24. 手勢識別器問題
- 25. cocos2d-iOS - 手勢識別器
- 26. 點擊手勢識別器
- 27. 添加手勢識別器
- 28. 手勢識別器和TableView
- 29. UIPageController和手勢識別器
- 30. 手勢識別器和塊
其實,我的錯。刪除了我的答案。我剛剛檢查過,你顯然可以控制 - 直接拖入@implementation。不知道爲什麼這不適合你。 – geraldWilliam