0

我有一個UICollectionViewController,每個UICollectionViewCells都包含一個子視圖WKWebView。我正在嘗試執行installsStandardGestureForInteractiveMovement = true,因此我可以重新排列單元格。我已經實現了installsStandardGestureForInteractiveMovement

的CollectionView(的CollectionView:UICollectionView, moveItemAtIndexPath sourceIndexPath:NSIndexPath, toIndexPath destinationIndexPath:NSIndexPath)

但似乎WKWebView攔截了長按。我該如何解決這個問題,以便它在WKWebView上被忽略,以便重新按照預期工作?

謝謝,

羅布

回答

0
WKWebView

有它自己的長按壓識別器,其可以攔截對細胞長按手勢。 要解決這個問題,您可以在單元格中添加一個覆蓋Web視圖的透明視圖。如果您需要對Web視圖的工作也相互作用,就需要自己來實現與方法的集合視圖重新排序互動:

- beginInteractiveMovementForItemAtIndexPath: 
- updateInteractiveMovementTargetPosition: 
- endInteractiveMovement 
- cancelInteractiveMovement 
+0

這工作,但如果我也想捏什麼放大去努力下面的webkit視圖? – Rob

+0

如果您以第一種方式(例如覆蓋Web視圖的透明視圖)實現它,則可以在透明視圖中添加您自己的夾點識別器,然後手動更改webView滾動視圖的縮放比例。或者繼續回答第二種方式(自定義集合重新排序實現)。 – DisableR

+0

問題是我希望WKWebView中的大部分手勢都能正常工作,捏放大縮小,雙擊縮回大小以查看,輕掃以移動縮放視圖等等......這只是長時間的觸摸需要發送到collectionviewcontroller來處理重新排序。有什麼方法可以讓網絡視圖保持在正面,可以處理90%的手勢,但以某種方式攔截長按? – Rob