webview 使用总结(二)

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部.....");
		}


你可能感兴趣的:(Android)