webview设置paddingbottom无效,通过js给android控件WebView设padding
来源:互联网 发布:头影测量软件 编辑:程序博客网 时间:2024/03/29 02:08
项目中有个界面是用来显示一个网页的,很简单,放个WebView就ok了,可是返回按钮放在哪 ,ui的设计是在底部显示一个半透明的条,左边有一个返回按钮。这个条显示在内容上面。我有一个担心,就是要是最下面的内容需要操作的,虽然看的见,但不能操作。开始很自然就想到设padding,可是android的WebView有个bug,设了没有用。
之后想了很多的办法,通过判断WebView滑动到底了,再自己做动画,可是效果不是太好
if(Utils.dip2px(this,mWvContent.getContentHeight()) - mWvContent.getHeight() - mWvContent.getScaleY()== 0 ){}
这个判断条件有点点问题,有时候,他到底了,可是不等于0,这个可以加点幅度。然后就是一开始我也是在网上找了些判断,他们是直接用的getContentHeight(),实际使用中我发现在这个返回的是dp,我们需要转成px。
我还想着重写WebView,能力不怎么样,只能想到重新测量高度,在OnDraw()方法里画点底部的空白,可是都没有能实现。
达不到效果,于是我不甘心的继续在网上搜了下WebView 设 Padding,发现在个大神的:http://blog.csdn.net/janronehoo/article/details/45100551
我有想过通过js去改网页,可是我js不怎么得,不会啊!当我看到标题时,高兴的不行,最重要的是,问题解决了。谢谢大神
大神的代码:
webView.setWebViewClient(new WebViewClient() { @Override public void onPageFinished(WebView view, String url) { webView.loadUrl("javascript:document.body.style.padding=\"8%\"; void 0"); }});
和我想的效果差一点点,我就试着改了改,试过padding-bottom不行,paddingBottom可以,反正不懂,也就没有细究,实现就行,然后就是怎么设固定高度,而不是百分比。
mWvContent.loadUrl("javascript:document.body.style.paddingBottom=\"" + Utils.px2dip(this, mTvBack.getHeight()) + "px\"; void 0");
需要注意的是,执行js需要在page load 结束之后,大神代码中的onPageFinished()方法,有时候一些网页是不会调用的,所以还需要一些其他的,比如onReceivedSslError()方法,这也是在一些大神那看到的,感谢n多大神的分享。
http://www.cnblogs.com/accumulate-gogogo/p/5593563.html
- webview设置paddingbottom无效,通过js给android控件WebView设padding
- Android WebView 设置Padding
- 利用 js 给 WebView add 添加 padding
- WebView 通过JS 设置字体
- Android 给WebView设置UA
- 通过CookieManager给WebView设置Cookie
- Android webview背景设置为透明无效
- Android webview背景设置为透明无效
- Android webview背景设置为透明无效
- Android webview背景设置为透明无效
- Android隐藏WebView无效
- android中给WebView设置Cookie
- android通过webview和js交互
- android通过webview和js交互
- webview通过js调用android方法
- android通过webview和js交互
- Android 通过WebView 调用Js sqlite数据库
- Android 通过WebView和js的交互
- 构建一个具有丰富内容的Email
- 提高代码阅读能力的7种方法
- PL/SQL Developer使用技巧、快捷键
- 【智安仕】轮胎升级技术分享
- 欢迎参加2017中国卫星应用大会!
- webview设置paddingbottom无效,通过js给android控件WebView设padding
- Win10系统下深度学习框架Keras的安装与搭建
- [分治] 51Nod1472 Codeforces #549F. Yura and Developers
- springmvc
- Maven学习总结
- 操作系统学习_Linux0.12_as汇编
- CCF CSP认证考试历年真题 日期计算 C语言实现
- 喜大普奔!程序员已当选最佳国民女婿
- python unicode转str