Android ScrollView内部的WebView似乎工作正常,但警告不要使用-可选?

Android ScrollView内部的WebView似乎工作正常,但警告不要使用-可选?,android,android-webview,android-scrollview,Android,Android Webview,Android Scrollview,我读过的所有东西(在已经制作了我的应用程序之后:()都说“你不应该在ScrollView中使用WebView!”。这是可以理解的,因为理论上你可以有两个滚动的东西,这会带来奇怪的可用性 但是-到目前为止,我还没有看到任何负面影响。再说一次,我使用的每个网络视图都不需要滚动-也许这使得它可以接受使用,即使它在技术上是错误的 由于缺乏对特定版本的测试,是否存在我没有注意到的不良影响 如果我不能在ScrollView中使用WebView,我将如何获得以下布局(我当前的应用程序): 注意:我意识到这是“

我读过的所有东西(在已经制作了我的应用程序之后:()都说“你不应该在ScrollView中使用WebView!”。这是可以理解的,因为理论上你可以有两个滚动的东西,这会带来奇怪的可用性

但是-到目前为止,我还没有看到任何负面影响。再说一次,我使用的每个网络视图都不需要滚动-也许这使得它可以接受使用,即使它在技术上是错误的

由于缺乏对特定版本的测试,是否存在我没有注意到的不良影响

如果我不能在ScrollView中使用WebView,我将如何获得以下布局(我当前的应用程序):

注意:我意识到这是“错误的”-但在HTML中使用
标记也是如此,而且人们仍然一直有效地使用它们。区别似乎在于有一种简单而更好的方法来替代
-Android中的这种情况类似吗?一种获得上述信息的简单方法?

不要使用WebView。 您可以附加到应用程序或使用AdMob的广告。 观看视频就是观看视频。 评论webview的替代方法是makeAPI(使用php[POST]和sql)。 使用webview并不方便。 我希望我能帮忙

这是可以理解的,因为理论上你可以有两个滚动的东西,这将使奇怪的可用性

更具体地说,
ScrollView
就像一盒石头一样愚蠢,并且假设它可以完全控制滚动

再说一遍,我使用的每个WebView都不需要滚动

更准确地说,它不需要在您测试过的设备上滚动,也不需要在您测试过的内容上滚动

例如,Disqs注释线程通常需要在桌面浏览器上滚动。可以想象,如果没有可以使用的无滚动Disqs插件,则会有足够长的注释线程需要在移动设备上滚动

如果我不能在ScrollView中使用WebView,我将如何获得以下布局(我当前的应用程序):


摆脱一切,创建一个单一的
WebView
,生成的HTML内容包含当前结构中的所有内容。瞧,做你在网站中要做的事情。

只要WebView内部不可沿ScrollView的同一方向滚动,将WebView放置在ScrollView中就可以了。使WebView不在内部滚动可通过以下两种方式实现:

  • WebView的高度(假设ScrollView可以垂直滚动)是WRAP_内容
  • WebView有一个固定的大小,内容有一个反应式布局,它永远不会比视口大(或者可以使用“溢出:隐藏”)

我认为上述方法不能与收缩缩放很好地结合,所以最好不要启用它。

创建一个Java类并使用WebView进行扩展

package com.mypackage.common.custom.android.widgets

public class TouchyWebView extends WebView {

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

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

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

  @Override
  public boolean onTouchEvent(MotionEvent event){
     requestDisallowInterceptTouchEvent(true);
     return super.onTouchEvent(event);
  }          
}
在布局上

<com.mypackage.common.custom.android.widgets
      android:id="@+id/webView"
                android:layout_width="match_parent"
                android:layout_height="match_parent" />


我希望这能解决你的问题

Admob是专门为谷歌设计的-我们不通过他们提供广告。评论是通过Disqs提供的,它有HTML代码要实现。我很感激你的时间,但我不相信这就是我要找的。当我有ImageView时,点击检测非常容易……如果是HTML,我该怎么做呢ndle?(我使用的disqus代码似乎是无滚动的,因为有很多评论,但仍然没有滚动-尽管我仍然喜欢使用所有生成的HTML的想法-只是不确定一些事情,如图像点击…等等)@Dave:“如果它们是HTML,我将如何处理?”--ummm…
onclick
属性,调用通过
addJavaScriptInterface()
注入的Java对象,这将是我的起点。
<com.mypackage.common.custom.android.widgets
      android:id="@+id/webView"
                android:layout_width="match_parent"
                android:layout_height="match_parent" />