要素まで下にスクロールしたいだけで、ロードしているページにアクセスできる場合は、javascript で、ページのロード時に次のようにすることができます。
var container = $('div'),
scrollTo = $('#my_header');
container.scrollTop(
scrollTo.offset().top - container.offset().top + container.scrollTop()
);
この質問を参照してください:
jQuery を使用して特定のアイテムにスクロールする方法は?
基になるリソースを変更したくない場合は、次の Java コードを WebView に追加できます。これにより、ページが読み込まれると、上記の JavaScript コードが呼び出されます。
WebView myWebView = (WebView)v.findViewById(R.id.web_view);
myWebView.getSettings().setSupportZoom(true);
myWebView.getSettings().setUseWideViewPort(true);
myWebView.getSettings().setBuiltInZoomControls(true);
myWebView.getSettings().setJavaScriptEnabled(true);
myWebView.setWebChromeClient(new WebChromeClient());
myWebView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
String javascript = "javascript:"
+ "var container = $('div'),scrollTo = $('#my_header');"
+ "container.scrollTop(scrollTo.offset().top - container.offset().top + container.scrollTop());";
view.loadUrl(javascript);
}
});
// Finally, load the page
myWebView.loadUrl(resource);
これにより、その WebViewClient によってページがロードされるたびに JavaScript が実行されることに注意してください。ただし、必要に応じて、特定のページの JavaScript スクロール コードのみを呼び出すロジックを簡単に追加できます。