[英]PanResponder could not detect touch if i touch on Touchables(TouchableHighlight, TouchableOpacity, TouchableWithoutFeedback)
[英]How can I detect if the touch is over the border of a View from PanResponder?
我正在研究圖像裁切器,盡管它不是一個完美的解決方案,但我仍然以某種方式想出了如何移動裁切器,但是它可以工作,但是現在我想響應給定視圖的邊框觸摸/移動
我正在使用此模塊進行整合,但實際上我仍然停留在如何響應邊框觸摸/移動的問題上
gestureState參數足以完成任務。
x0和y0是響應者視圖的左上角坐標,此外, moveX
和moveY
保留觸摸的當前坐標。
因此moveX === x0
表示當前觸摸位於左邊緣。 同樣, moveY === y0
表示當前觸摸位於頂部邊緣。
為了處理右邊緣和下邊緣,建議您使用<View>
標記中的onLayout
並將<View>
高度和寬度分配給某些變量或狀態變量(請注意性能優化)
然后以類似方式使用它:
onPanresponderMove(evt, {x0, y0, moveX, moveY) {
...
if(moveX=== x0 || moveX === x0 + this.state._currentWidth) {
// task for left and right edge response
...
}
...
}
獲取視圖寬度:
<View {...this._myResponder.panHandlers}
onLayout={ ({width, height}) => this.state._currentWidth = width } />
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.