[英]UISwipeGestureRecognizer from specific location
所以我有一個按鈕,並且TouchUpInside事件已經分配給該按鈕。 當按下按鈕時,它將使菜單從屏幕底部到屏幕的大約一半動畫化。
但是我希望用戶能夠從WITHIN按鈕向上滑動以對菜單進行動畫處理,而從WITHIN按鈕向下滑動以進行動畫處理。
我能夠弄清楚上下滑動手勢,但它們可以在整個視圖中使用。
因此,當用戶在視圖上的任何位置向上滑動時,它都會進行動畫處理。
如何獲取LocationOfTouch並從按鈕內限制滑動的起點?
這就是我現在所擁有的:
我聲明:
UISwipeGestureRecognizer UpSwipe;
UISwipeGestureRecognizer DownSwipe;
然后這就是我使用它們的方式:
public void setupGestures() {
this.UpSwipe = new UISwipeGestureRecognizer () {
Direction = UISwipeGestureRecognizerDirection.Up,
Enabled = true
};
this.DownSwipe = new UISwipeGestureRecognizer () {
Direction = UISwipeGestureRecognizerDirection.Down,
Enabled = true
};
UpSwipe.AddTarget (animateRecentActivityView);
DownSwipe.AddTarget (animateAwayRecentActivityView);
this.View.AddGestureRecognizer (UpSwipe);
this.View.AddGestureRecognizer (DownSwipe);
}
如何獲取LocationOfTouch並從按鈕內限制滑動的起點?
在純可可觸摸中,您可以覆蓋UIView
的方法
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
參數“ touches”包含一組UITouch
調用UITouch
的方法
- (CGPoint)locationInView:(UIView *)view
您可以獲得接觸點的位置
我實際上能夠弄清楚。 我的按鈕在視圖內,即使我向該按鈕添加了滑動手勢,但還是無法正常工作。 將其從視圖中刪除后,將swipeGesture添加到按鈕即可直接正常工作。
this.UpSwipe = new UISwipeGestureRecognizer () {
Direction = UISwipeGestureRecognizerDirection.Up,
Enabled = true
};
this.DownSwipe = new UISwipeGestureRecognizer () {
Direction = UISwipeGestureRecognizerDirection.Down,
Enabled = true
};
UpSwipe.AddTarget (animateRecentActivityView);
DownSwipe.AddTarget (animateAwayRecentActivityView);
btnAct_HomeRecentActivity.AddGestureRecognizer (UpSwipe);
btnAct_HomeRecentActivity.AddGestureRecognizer (DownSwipe);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.