Phonegap项目中禁用WebViewBounce

简介: UIWebView是iOS SDK中一个最常用的控件,在PhoneGap中,默认也是使用UIWebView作为默认视图显示我们的HTML应用的。   在使用PhoneGap的项目中,默认WebViewBounce这个选项是打开的,所以使用手指向下或者向上滑动屏幕时,经常会看到页面底部和屏幕底部会出现一大片空白,然后松开手指后,再弹回去的特效。

UIWebView是iOS SDK中一个最常用的控件,在PhoneGap中,默认也是使用UIWebView作为默认视图显示我们的HTML应用的。
 
在使用PhoneGap的项目中,默认WebViewBounce这个选项是打开的,所以使用手指向下或者向上滑动屏幕时,经常会看到页面底部和屏幕底部会出现一大片空白,然后松开手指后,再弹回去的特效。
 
之前查了很多资料,说可以通过修改 plist 或者 config.xml 来关闭这个效果,如下:
 

    <preference name="WebViewBounce" value="false" />
    <preference name="DisallowOverscroll" value="true" />

 
经过我在 PhoneGap 2.6、PhoneGap 2.9 这两个版本中测试后,发现都不能够生效。经过分析,实际上iOS中的PhoneGap项目,只不过是默认初始化一个UIWebView,然后在这个视图中加在HTML资源,那么我们可以直接使用原生代码将Bounce禁用。如下所示:
 

- (void)webViewDidFinishLoad:(UIWebView*)theWebView
{
    
// Black base color for background matches the native apps
    theWebView.
backgroundColor = [UIColorblackColor];
    [(UIScrollView *)[[theWebView subviewsobjectAtIndex:0setBounces:NO];

    return [superwebViewDidFinishLoad:theWebView];
}

 
再重新编译之后,可以看到效果了吧 :)
 
参考资料:
 
 
相关文章
|
XML Android开发 数据格式
|
Web App开发 移动开发 Apache
|
移动开发 iOS开发
使用PhoneGap命令行工具创建IOS PhoneGap项目及无证书真机调试
<p>     <span style="font-size:10px">  在<span style="color:rgb(55,55,55); font-family:'Helvetica Neue',Helvetica,Arial,sans-serif; line-height:24px; text-indent:30px">使用PhoneGap2.0及以上版本的时候,发现无法像低版
1598 0
|
移动开发 容器 关系型数据库
《PhoneGap精粹:构建跨平台的移动App》——导读
本节书摘来自异步社区《PhoneGap精粹:构建跨平台的移动App》一书中的目录,作者 【美】John M. Wargo,更多章节内容可以访问云栖社区“异步社区”公众号查看
1385 0