簡體   English   中英

縮放時,UIScrollview子視圖無法識別手勢

[英]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.

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