我有一个在LinearLayout内的ScrollView内使用WebView的应用程序。 ScrollView的目的是滚动浏览网页的一部分,并防止用户滚动到页面的其他部分。但是,这会导致在应用程序空闲时在后台出现大量闪烁。
我已经尝试了几乎所有可以找到的相关职位,但没有找到有效的方法。
滚动视图的代码:
//Scrolls past the header
final ScrollView alertScroll = (ScrollView)findViewById(R.id.alertScroll);
alertScroll.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
alertScroll.post(new Runnable() {
public void run() {
alertScroll.scrollTo(0,100);
}
});
}
});
//Keeps user from scrolling
alertScroll.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
return true;
}
});
content_main.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context=".MainActivity"
tools:showIn="@layout/activity_main"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout
android:id="@+id/verticalIguess"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:scaleType="fitXY">
<ScrollView
android:id="@+id/alertScroll"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scaleType="fitXY">
<WebView
android:id="@+id/AlertMap"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginEnd="0dp"
android:background="@android:color/white"
android:scaleType="fitXY"
app:layout_constraintEnd_toEndOf="parent"
tools:layout_editor_absoluteY="0dp">
</WebView>
</ScrollView>
</LinearLayout>
</RelativeLayout>