public voID onPageFinished(WebVIEw vIEw,String url) { // Todo auto-generated method stub super.onPageFinished(vIEw,url); webvIEw.scrollTo(0,scrollY); }
知道为什么吗?
完成加载后如何自动滚动页面?
显示页面后,WebVIEw“认为”它已滚动到您的滚动位置.
要进行测试,您可以验证WebVIEw.getScrollY()是否返回了您想要的内容,但页面的显示不在该位置.
要解决此问题,以下是在页面显示后立即滚动到Y的非确定性方法:
... webVIEw = (WebVIEw) vIEw.findVIEwByID(R.ID.web_vIEw_ID); webVIEw.loadData( HTMLTodisplay,"text/HTML; charset=UTF-8",null); ... webVIEw.setWebVIEwClIEnt( new WebVIEwClIEnt() { ... } ); webVIEw.setWebChromeClIEnt(new WebChromeClIEnt() { ... @OverrIDe public voID onProgressChanged(WebVIEw vIEw,int progress) { ... if ( vIEw.getProgress()==100) { // I save Y w/in Bundle so orIEntation changes [in addition to // initial loads] will reposition to last location jumpToY( savedYLocation ); } } } ); ... private voID jumpToY ( int yLocation ) { webVIEw.postDelayed( new Runnable () { @OverrIDe public voID run() { webVIEw.scrollTo(0,yLocation); } },300); }
300 ms的最终参数似乎允许系统在调用jumpToY之前“追赶”.根据运行的平台,您可能会使用该值.
希望这可以帮助
-麦克风
总结以上是内存溢出为你收集整理的android webview.scrollTo无效全部内容,希望文章能够帮你解决android webview.scrollTo无效所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)