React native 禁止手勢觸摸 pointerEvents


碰到一個需求是做個輪播圖帶自動播放的,UED那邊給輪播的底部加了陰影漸變,如下紅色區域。

 

 

 這樣會導致一個問題,手觸摸在紅色區域會被這層View擋住,導致不能手動滑動切換。

原先采取過的方法是在對應的觸摸事件 執行return false ,但是這個局限於輪播圖得是紅色區域的父組件。不然觸摸無法冒泡上去。

發現有個好用的屬性,以前從來沒用過。pointerEvents 

看看官網的介紹:

  用於控制當前視圖是否可以作為觸控事件的目標。

  • auto:視圖可以作為觸控事件的目標。
  • none:視圖不能作為觸控事件的目標。
  • box-none:視圖自身不能作為觸控事件的目標,但其子視圖可以

<View pointerEvents = 'none'></View>

這樣就能完美的解決沖突了,直接不用管啥層級問題,冒泡捕獲啥的都忽略。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM