当前位置: 首页 > 面试题库 >

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

芮博厚
2023-03-14
问题内容

我只想在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);
    }
});


 类似资料:
  • 问题内容: 在鼠标滚轮上滚动它执行水平滚动。 已编辑 好吧,firebug说他在用 问题答案: 看来他只是将mousewheel事件映射到滚动区域。在IE中,仅通过使用方法就非常容易-滚动水平条的量为垂直条通常滚动的量。其他浏览器不支持该方法,因此您必须随心所欲地滚动任意数量:

  • 问题内容: 我有一个,当行太多时,会出现滚动条,但是当行太长时,该行会分成两行,而不是出现水平滚动条,如何使水平条出现而不是分成两行,我的添加如下: 问题答案: 正如我们自己的Rob Camick 在这里介绍的那样,您可以尝试使用类似… 这将停止行/自动换行

  • 问题内容: 我的引导页面上有这种令人讨厌的水平滚动。无法弄清楚是什么使它表现出这种行为或如何处理? JsFiddle链接:http : //jsfiddle.net/FatAlbert/cd1syrd9/2/ HTML: CSS: 问题答案: 根据Bootstrap 3文档: 必须将行放置在.container(固定宽度)或.container-fluid(全角)内,以便正确对齐和填充。 因此,将

  • 问题内容: 我有一个这样的清单: 和以下CSS: 我试图强制列表项从左到右显示,即 我的问题: 这样做会给我两行,每行两项。 问题: 是否有一种CSS方式可以将列表项强制全部放在一行中,以便可以使用水平滚动?现在,如果我设置了 overflow:auto, 我只会得到垂直滚动条,这是我不想要的。 我不想在包装div上设置此设置。我很好奇,是否有一个CSS解决方案可以单独在列表中使用。 感谢帮助!

  • 问题内容: 我正在尝试创建一系列只能水平滚动的照片。 它应该看起来像这样的 但是,只有通过指定包含照片的的宽度,才能实现上述目的(因此它们不会“自动换行”)。如果我不放宽- 看起来像这样; 使用CSS可以防止固定宽度的图像发生变化,该怎么办。 谢谢 问题答案: 您可以使用与。这样写:

  • 本文向大家介绍如何将水平滚动条放置在DIV的中心?,包括了如何将水平滚动条放置在DIV的中心?的使用技巧和注意事项,需要的朋友参考一下 要将水平滚动条放置在div的中心,请使用向左滚动键。您可以尝试运行以下代码以将水平滚动条放置在div中。 示例 滚动条位于div的中心: