1: 获取webview的缩放级别
webview.setInitialScale(50);如果手动缩放了该值,然后刷新。刷新以后该值已经不存了,需要在刷新之前保存下来initialScale = (int) (webview.getScale() * 100);
webview.getScale() * 100
获取到的数值就是setInitialScale设置的值
2:动态刷新webview
需求是这样的,需要从服务器获取图片列表。然后我动态生成一个/mnt/sacard/test.html的文件
然后webview.loadUrl 刚开始先加载五张,随着webview的混动动态加载其他的,然后修改test.html的数据。
即是多了几个img标签,然后刷新webview
如果采用
webview.loadUrl("file://mnt/sdcard/test.html")则每次加载完成,就回到顶部了。 需要重新往下滚屏同样的webview.reload()也存在这个问题。 以下方法结合js可以实现完美解决
webview.loadUrl( "javascript:window.location.reload( true )" );
3:监听webview滚动到末尾
@Override public boolean dispatchTouchEvent(MotionEvent ev) { if ((int) (mWebView.getContentHeight() * mWebView.getScale()) == (mWebView.getHeight() + mWebView.getScrollY())) { // 滑动到底部,你要做的事·····} if (mWebView.getScrollY() == 0) { // 滑动到顶部,你要做的事···· System.out.println("滑动到Ding部....."); }