0

いくつかのメディア (ビデオ、画像、テキストの断片) を表示する ViewPager があります。画像の場合、画像をタップするとテキストが表示されます。ビデオの場合、タップするとメディア コントロールが表示されます。

問題は、画像 (onTouch イベントを自分で実装したもの) と videoView (mediacontrols の内部ジェスチャ管理を持つもの) の両方の場合、次または前のページにスライドすると、タップ イベントがフラグメントに運ばれることです。 、そしてテキストが画像に表示され、メディアコントロールが表示されます(ビデオが表示されなくなっても、メディアコントロールは残ります).

この動作を回避するにはどうすればよいですか?

4

1 に答える 1

1

があり、ViewPager常にScrollViewフォーカスを維持したい場合、それに触れてもScrollViewフォーカスが得られない場合、これがそれを行うことがわかりました。

mViewPager = (ViewPager)findViewById(R.id.pager);
mViewPager.setAdapter(adapter);
mViewPager.setOnTouchListener(new View.OnTouchListener() {
   @Override
   public boolean onTouch(View v, MotionEvent event) {
      mViewPager.getParent().requestDisallowInterceptTouchEvent(true);
      return false;
   }
});
于 2013-02-06T10:27:09.983 に答える