Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ScrollTo()方法不使用';当WebView在ScrollView中时不工作_Javascript_Android_Webview_Scrollview - Fatal编程技术网

Javascript ScrollTo()方法不使用';当WebView在ScrollView中时不工作

Javascript ScrollTo()方法不使用';当WebView在ScrollView中时不工作,javascript,android,webview,scrollview,Javascript,Android,Webview,Scrollview,我有一个WebView,它正在用JS加载HTML。从WebView我调用JS函数,该函数正在查找HTML中的一些文本。在这个函数中,我有一个将WebView滚动到下一个匹配文本的命令: window.scrollTo(0, y); 如果我将WebView放在ScrollView中(如下面的代码所示),WebView将不会滚动(甚至命令WebView.scrollTo(x,y)也不会滚动)。但是如果我把它放在滚动视图之外,滚动到下一个位置就可以了。 但是我必须在滚动视图中使用WebView 请帮

我有一个WebView,它正在用JS加载HTML。从WebView我调用JS函数,该函数正在查找HTML中的一些文本。在这个函数中,我有一个将WebView滚动到下一个匹配文本的命令:

window.scrollTo(0, y);
如果我将WebView放在ScrollView中(如下面的代码所示),WebView将不会滚动(甚至命令
WebView.scrollTo(x,y)
也不会滚动)。但是如果我把它放在滚动视图之外,滚动到下一个位置就可以了。 但是我必须在滚动视图中使用WebView

请帮我解决这个问题。我该怎么办? 这是我的布局代码:

<ScrollView
    android:id="@+id/articleScrollView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:scrollbars="none">

    <LinearLayout
        android:id="@+id/articleBodyLinearLayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        <include layout="@layout/fragment_main_article"/>

        <LinearLayout
            android:id="@+id/article_body"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:clickable="true"
            android:orientation="vertical">

            <WebView
                android:id="@+id/article_web_view"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_margin="3dp"
                android:clickable="true"
                android:textSize="16dp">
            </WebView>
        </LinearLayout>
    </LinearLayout>
</ScrollView>
您不应该在scroll view内部对web view使用scrollTo()方法,因为*如果您在scroll view下使用web view,则所有滚动功能都将应用于其父视图(用于scroll view)*,因此我们必须在父滚动视图而不是web view上应用该方法

因此,请使用scroll view的fullScroll()方法。所以请在下面的行中应用滚动视图

用于滚动顶部>>

 YourScrollView.fullScroll(yourScrollView.FOCUS_UP);
YourScrollView.fullScroll(yourScrollView.FOCUS_DOWN);
用于向下滚动>>

 YourScrollView.fullScroll(yourScrollView.FOCUS_UP);
YourScrollView.fullScroll(yourScrollView.FOCUS_DOWN);
您不应该在scroll view内部对web view使用scrollTo()方法,因为*如果您在scroll view下使用web view,则所有滚动功能都将应用于其父视图(用于scroll view)*,因此我们必须在父滚动视图而不是web view上应用该方法

因此,请使用scroll view的fullScroll()方法。所以请在下面的行中应用滚动视图

用于滚动顶部>>

 YourScrollView.fullScroll(yourScrollView.FOCUS_UP);
YourScrollView.fullScroll(yourScrollView.FOCUS_DOWN);
用于向下滚动>>

 YourScrollView.fullScroll(yourScrollView.FOCUS_UP);
YourScrollView.fullScroll(yourScrollView.FOCUS_DOWN);

你解决这个问题了吗?你解决这个问题了吗?