首页 > 解决方案 > 如何在我的网页中垂直排列水平排列的部分,以使我的页面在设备上响应

问题描述

我的问题:

我的网页屏幕分辨率比手机屏幕分辨率宽。我正在从要在 WebView 上显示的资产本地尝试它。

  1. 这些部分在网格显示中水平排列。
  2. 然后当我在手机上看到相同的页面时,中间部分被折叠(未显示)。
  3. 有水平和垂直滚动视图是不可见的,当它应该时。
  4. 应该是这样:水平排列的部分应该垂直排列,以便能够显示每个部分。

我试图将 Horizo​​ntalScrollView 和 VerticalScrollView 以及 WebView 放在里面。

我已将 WebView 的分辨率固定为 1000dp * 600dp(在我的布局 xml 中分别为 layout_width 和 layout_height)。

现在我可以滚动到屏幕的所有部分,但是点击和拖放在页面上不起作用(拖放由内部的 JavaScript 管理)。

我尝试使用 onInterceptTouchEvent 来拦截一些事件,但我会说不建议使用。

我想完全从网页管理滚动和点击,而不是使用水平滚动视图和滚动视图并在 WebView 上设置高度和宽度。

试图从以下方面寻求帮助:

  1. 如何使页面具有响应性
  2. 我怎样才能横向排列...

标签: javascriptandroidhtmlcsswebview

解决方案


下面的链接稍微解决了我的问题。我可以控制何时希望上述滚动条在需要时滚动(或通过在此滚动视图父级内添加填充尺寸以提供滚动区域)。

当拖动事件在其子视图中发生时,或者在您不希望滚动视图父级滚动的其他情况下,防止父级滚动视图滚动。

还有另一种简短的方法:

scrollView.requestDisallowInterceptTouchEvent(true);

但它提供的控制较少。如果您在此滚动视图父级中添加填充尺寸以提供滚动区域,它可以满足我的需要。


推荐阅读