[英]On zoom, UIScrollview subviews not recognizing gesture
我有一個滾動視圖,在其中已將圖像視圖添加為子視圖。 滾動視圖的contentsize與圖像視圖的大小(寬度和高度)相同。 滾動視圖外有兩個按鈕。 當我在它們上單擊時,一個小的矩形視圖將作為子視圖添加到imageview。 添加矩形視圖后,用戶可以將其拖動到圖像視圖上的任何位置。
直到我捏放大scrollview之前,它都可以正常工作。 在viewForZoomingInScrollView:
方法中,我返回了imageview並且縮放正常。 但是在縮放視圖中,當我嘗試在矩形視圖周圍拖動時,它不會移動。 它不再識別平移手勢。 知道為什么會這樣嗎?
謝謝
Hetal
根據您的最后評論,建議您嘗試以下操作:
在您的viewDidLoad
方法中添加以下內容:
for (UIGestureRecognizer *gr in self.scrollView.gestureRecognizers) {
if ([gr isKindOfClass:[UIPanGestureRecognizer class]])
{
[gr requireGestureRecognizerToFail:self.dragGR];
}
}
其中dragView是您的矩形視圖。
以下可能對於上面的工作不是必需的,但是無論如何清理視圖層次結構可能是一個好習慣:
將普通UIView添加為具有相同框架的圖像視圖的超級視圖,並將矩形視圖添加為該新視圖的子視圖。 在您的viewForZoomingInScrollView:
返回該新視圖。 正如我在評論中說的,我認為將子視圖添加到UIImageViews並不是一種好的做法。 但這也許只是我的意見:)
這也應該工作,並且更加簡潔:
[self.scrollView.panGestureRecognizer requireGestureRecognizerToFail:self.myPanRecognizer];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.