-1

WebViewsを含むことができるScrollViewがあります。私は別の内部のスクロール可能なビューを保持することが正しい方法ではない知っているが、これは私のアプリケーションの基本要件です。私はすべてWebViewsに垂直スクロール(setVerticalScrollBarEnabled()を使用)を無効にしました。無効にするfocusabilityScrollViewの子を使用してdescendantFocusability=blocksDescendants.私はScrollViewだけスクロールします。Android WebViewでマウスホイールのスクロールを無効にするにはどうすればよいですか?

タッチしたままスクロールしようとすると、Android搭載端末に問題はありません。しかし、問題は私がChromebookの中で私のAPKを実行し、WebViewの上でマウスホイールのスクロールをしようとすると、ScrollViewはスクロールしません。 Chromebookのトラックパッドはうまく動作しますが、WebViewをスクロールするとスクロールします。マウスホイールのスクロールにのみ問題があります。 WebViewがスクロールイベントを消費していて、それが最大でScrollViewにバブリングしていないようです。

誰かがこの問題の解決策を提案できますか?

+0

NestedScrollViewを使用して問題を解決しますか? – Juan

+0

NestedScrollViewと同じ動作です。 – Vivek

答えて

0

この問題の回避策が見つかりました。 WebViewをサブクラス化し、onGenericMotionEventメソッドをオーバーライドするだけです。

public class PreviewWebView extends WebView { 

    public PreviewWebView(Context context) { 
     super(context); 
    } 

    public PreviewWebView(Context context, AttributeSet attrs, int defStyle) { 
     super(context, attrs, defStyle); 
    } 

    public PreviewWebView(Context context, AttributeSet attrs) { 
     super(context, attrs); 
    } 

    @Override 
    public boolean onGenericMotionEvent(MotionEvent event) { 
     return false; 
    } 
} 
関連する問題