如何在Android Webview中禁用水平滚动

我只想在Webview中进行垂直滚动,而不希望进行水平滚动。

webSettings.setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);

这帮助我解决了滚动问题。

但是使用它使我的webview看起来很奇怪。所有编辑文本的高度都被压缩(垂直),并且看起来很差。

  • 还有什么其他方法可以从客户端禁用水平滚动?

  • 使用SINGLE_COLUMN如何避免webview高度变化的问题?我希望垂直外观与没有SINGLE_COLUMN时的外观相同

回答:

这是一种hack,但是过去曾经为我成功地工作过。将WebView围绕在垂直方向的ScrollView中:

<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" />

</ScrollView>

然后禁用WebView中的所有滚动。

要禁用WebView的滚动,可以使用以下代码:

 // disable scroll on touch

webview.setOnTouchListener(new View.OnTouchListener() {

public boolean onTouch(View v, MotionEvent event) {

return (event.getAction() == MotionEvent.ACTION_MOVE);

}

});

以上是 如何在Android Webview中禁用水平滚动 的全部内容, 来源链接: utcz.com/qa/424516.html

回到顶部