viewpage里面放了一个imageview,MotionEvent.ACTION_MOVE里面设置imageview随着手指滑动,onTouchEvent是返回了true。纵向滑动没有问题,横向滑动会出现滑动一点点距离就划不动了,viewpage开始滑动。这是什么情况的。viewpage是横向的。
PHP中文网2017-04-17 17:49:46
ViewPager.onInterceptTouchEvent()
は通常、水平方向のスライドをブロックするため、画像は MotionEvent.ACTION_MOVE
アクションを受けません。
解決策はおおよそ次のとおりです。ViewPager.onInterceptTouchEvent()
の MotionEvent.ACTION_MOVE
の下に水平方向のスライドを防ぐコードがあります
このコードを実行できる限り、ViewPager はこの水平スライドをインターセプトしません。キー メソッドは canScroll()
ソースコードは以下のとおりです
リーリーざっくり言うと、中のサブコントロールが横にスライドできるかどうかを判断するものです
自分の中の最後のサブコントロールがImageView
なので、最後のキーはvが<🎜のときViewCompat.canScrollHorizontally(v, -dx);
です>、ImageView
true
に戻る
メソッドです。ここでのコードは非常に単純なので、ここでは記載しません。このメソッドは ImageView.canScrollHorizontally()
を直接継承し、View.canScrollHorizontally()
を返します。そこで私は 2 つの解決策を考えます false
ImageView
ImageView.canScrollHorizontally()
推奨方法 1true
を返すように