webview迫使我的scrollview到底

ste*_*eve 6 android android-webview android-scrollview

我在滚动视图中有一个webview,当Activity加载时,一旦webview完成"loadData",它就会强制我的滚动视图到底部(webview所在的位置).我如何防止这种情况发生?我试过这个,但它上下跳动屏幕,我不想要:

ScrollView scroll = (ScrollView)findViewById(R.id.detailsScroll);  
scroll.post(new Runnable()   
{  
    @Override  
    public void run()   
    {  
       ScrollView scroll = (ScrollView)findViewById(R.id.detailsScroll);  
       scroll.fullScroll(ScrollView.FOCUS_UP);  
    }  
});  
Run Code Online (Sandbox Code Playgroud)

Syl*_*phe 10

fhucho的答案可以阻止webview从滚动到底部.但是你会失去轨迹球等所有的可访问性.所以我发现了一个改进:

public class MyScrollView extends ScrollView {

    @Override 
    public void requestChildFocus(View child, View focused) { 
        if (focused instanceof WebView ) 
           return;
    super.requestChildFocus(child, focused);
    }
}
Run Code Online (Sandbox Code Playgroud)

希望能帮助到你 !


fhu*_*cho 5

使用此方法创建自定义ScrollView:

@Override
public void requestChildFocus(View child, View focused) {
    if (child instanceof WebView) return;
}
Run Code Online (Sandbox Code Playgroud)