pin*_*yid 5 android android-webview
我在片段的onCreateView中调用了wv.zoomIn(),它没有任何效果.
全文......
我的片段包含一个滑块,我用它来编程缩放/缩放webview.这工作正常.
我现在想要存储上次使用的缩放级别,并在下次显示时将其应用到webview.所以在onCreateView中,我正在检索缩放级别并调用zoomIn适当的次数.
public View onCreateView(LayoutInflater inflater...
...
if (savedZoom > defaultZoom) {
for (int i=defaultZoom; i< savedZoom; i++) {
MyLog.d("zooming in"); // appears x times in log as expected
boolean zoominResult = wv.zoomIn();
MyLog.d("zoominResult = "+zoominResult); // shows zoomIn returns FALSE
}
}
Run Code Online (Sandbox Code Playgroud)
日志确认wv.zoomIn()被调用的次数正确,但显示的webview仍处于默认缩放状态.
任何建议,如调用zoomIn()后渲染的方法,或保留和恢复webview的缩放设置的替代方法?
不要webview循环放大,尝试
wv.getSettings().setDefaultZoom(savedZoom-defaultZoom);
Run Code Online (Sandbox Code Playgroud)
另外,为了在 webView 上启用缩放,请添加以下代码:
wv.getSettings().setBuiltInZoomControls(true);
Run Code Online (Sandbox Code Playgroud)
您也可以尝试
int zoomLevel=(defaultZoom/savedZoom)*100;
wv.setInitialScale(zoomLevel);
Run Code Online (Sandbox Code Playgroud)