Voici mon code pour la désactivation de tous défilement dans webview:
// disable scroll on touch
webview.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
return (event.getAction() == MotionEvent.ACTION_MOVE);
}
});
À seulement masquer les barres de défilement, mais pas de désactiver le défilement:
WebView.setVerticalScrollBarEnabled(false);
WebView.setHorizontalScrollBarEnabled(false);
ou vous pouvez essayer d'utiliser une seule colonne mise en page mais cela ne fonctionne qu'avec de simples pages et il désactive le défilement horizontal:
//Only disabled the horizontal scrolling:
webview.getSettings().setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);
Vous pouvez également essayer d' envelopper votre webview avec défilement vertical scrollview et désactiver tous défilement sur la webview:
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scrollbars="vertical" >
<WebView
android:id="@+id/mywebview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scrollbars="none" />
</ScrollView>
Et ensemble
webview.setScrollContainer(false);
N'oubliez pas d'ajouter la webview.setOnTouchListener(...) le code ci-dessus pour désactiver tous défilement dans la webview. La verticale de la ScrollView pour permettre le défilement de la WebView.