0
A
回答
1
你可以使用代碼類似下面。它假定您已在故事板中進行設置:具有視圖的視圖控制器,並且已在其中附加了平移手勢識別器的子視圖中,並且IBOutlets
和IBAction
已正確連接,並且視圖控制器是手勢識別器的delegate
。
的想法是,你存儲的子視圖當你第一次接觸它的中心。當您平移子視圖時,手勢識別器會爲您提供從此位置移動的數量。試試吧。
#import "ViewController.h"
@interface ViewController(){
CGPoint subViewCenter;
}
@property (weak) IBOutlet UIView * subView;
@property (weak) IBOutlet UIPanGestureRecognizer *myPanGestureRecognizer;
@end
@implementation ViewController
@synthesize subView;
@synthesize myPanGestureRecognizer;
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
subViewCenter = self.subView.center;
}
- (IBAction)panAction:(UIPanGestureRecognizer *)sender {
CGPoint move = [sender translationInView:self.view];
CGPoint newCenter = subViewCenter;
newCenter.x += move.x; newCenter.y += move.y;
subView.center = newCenter;
}
@end
相關問題
- 1. 如何將平移手勢事件重定向到父視圖?
- 2. 如何通過平移手勢限制可移動視圖
- 3. UITableView背景視圖平移手勢
- 4. 父視圖上的雙擊手勢和子視圖上的單擊手勢
- 5. UIScrollview子視圖縮放後無法識別平移手勢
- 6. 平移手勢導致子視圖崩潰?
- 7. UIScrollView覆蓋我的子視圖的平移手勢識別器
- 8. 如何在半視圖上實現輕掃手勢並在另一半視圖上實現平移手勢?
- 9. 如何檢查其父視圖或子視圖觸摸手勢事件時是否被調用?
- 10. 從視圖中移除父視圖的視圖從視圖中移除的視圖中的父視圖
- 11. 通過uinavigationcontroller將變量從父視圖傳遞給子視圖
- 12. 父視圖不趕滾動手勢
- 13. 在滾動視圖中使用手勢(通過手勢將內容移出滾動視圖)
- 14. 如何讓某些手勢通過超級視圖進入下方的視圖?
- 15. 使用平移手勢從collectionView拖動新創建的子視圖
- 16. 如何從父視圖中捕獲Key Down事件到WPF中的子視圖
- 17. ios輕掃手勢不能在子視圖上用父視圖上的手勢識別
- 18. 如何在Android上設置手勢事件文本視圖
- 19. 從子視圖呈現父視圖backbone.js
- 20. 阻止ios7平移手勢彈出視圖控制器
- 21. 滾動視圖平移可防止捏手勢?
- 22. 平移手勢上的可滾動自定義視圖
- 23. 手勢識別器的UIButton子視圖
- 24. iOS:在子視圖內輕掃手勢
- 25. 子視圖上未識別的手勢
- 26. 如何讓子視圖從根視圖中獲得「onpress」事件?
- 27. 只能在圖庫上通過手勢導航一個視圖
- 28. iOS的主視圖是響應子視圖手勢
- 29. 如何檢測子視圖中的事件觸摸或如何在觸摸子視圖時觸及父視圖?
- 30. 用手勢滑動視圖
什麼是 「通過拖動事件」 呢?您想做什麼? –
對不起,我的意思是平底鍋的手勢。相反,UIImageView接收平移手勢,我想將該手勢傳遞給他的父視圖。 –
手勢只附加到一個視圖。不能像對象一樣傳遞。 –