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 subviews] objectAtIndex:0] setBounces:NO];

    return [superwebViewDidFinishLoad:theWebView];
}

 

再重新编译之后,可以看到效果了吧 :)

 

参考资料:

1、Project Settings for iOS

2、What's new in Cordova iOS 2.6.0

3、iOS开发之UIWebView

4、UIWebView禁止Bounce回弹

 

 

时间: 2024-09-28 00:35:02

Phonegap项目中禁用WebViewBounce的相关文章

sencha touch +phonegap项目中能实现(qq、微信、微博)登录和分享吗

问题描述 sencha touch +phonegap项目中能实现(qq.微信.微博)登录和分享吗 sencha touch +phonegap项目中能实现(qq.微信.微博)登录和分享吗?求做过相关的大师解答 解决方案 android第三方(qq.微信.微博)登录和分享

ios-IOS项目中集成Phonegap有没有好一点的教程,博客,和链接?

问题描述 IOS项目中集成Phonegap有没有好一点的教程,博客,和链接? IOS项目中要集成一点Phonegap 的东西, 网上找了半天都是 用Phonegap来创建工程.到官网上面去 按照流程做完出现很多问题,没有可以参考的东西,有路过的大神,帮个忙给点建议! 解决方案 http://blog.csdn.net/xiazhi_125/article/details/38119869 http://blog.csdn.net/flamingsky007/article/details/392

cordova-Navtive App项目中 使用Cordova Embedding WebViews

问题描述 Navtive App项目中 使用Cordova Embedding WebViews 请问有人试过在Navtive App项目中 使用Cordova Embedding WebViews 吗?就是单纯的想要使用Cordova/PhoneGap提供的 js & native Device API communication ~ 所有想要开一个WebView 使用Cordova框架,使得里面加载的页面可以使用js完成底层的交互按照官方4.0.0 版本去做了 http://cordova.

怎样在BIOS中禁用或启用设备

有些用户使用鲁大师检测系统硬件信息的时候,会得到存在未正常工作的设备的提示.出现这种情况的原因有可能是该设备在BIOS中被禁用了,需要在BIOS中打开. 另外也有用户需要禁用某些不常用的设备,如光驱等,以达到节能的目的.下面就以光驱为例,讲解如何在BIOS中禁用或启用设备. 1要在BIOS中禁用或启用设备,需要重启机器,然后按热键来进入BIOS,通常在计算机启动自检的时候会在屏幕上显示进入BIOS的热键,通常是类似":PressF1toenterBIOS":之类的提示,这个时候按下提示

BIOS中禁用或启用设备方法

  很多人可能都不太清楚,BIOS到底是什么.简单来说,它就是一组程序,保存着基本输入输出,开机后后自检,系统自动启动三大程序.有用户反映,想在BIOS中禁用或启用设备.下面,就和小编一起来看看BIOS中禁用或启用设备方法吧. BIOS中禁用或启用设备方法 1 要在BIOS中禁用或启用设备,需要重启机器,然后按热键来进入BIOS,通常在计算机启动自检的时候会在屏幕上显示进入BIOS的热键,通常是类似";Press F1 to enter BIOS";之类的提示,这个时候按下提示说明的F

使用PhoneGap命令行工具创建IOS PhoneGap项目及无证书真机调试

       在使用PhoneGap2.0及以上版本的时候,发现无法像低版本那样直接使用xcode来创建一个新的项目,只能通过PhoneGap的命令行工具来进行创建.        准备工作:        首先,准备好mac的环境和xcode的安装,地球人都知道.        然后得确定你的xcode已安装了Command Line Tools,如果不会安装的可以直接百度,上面有很多教程,这里就不多说了.        接着,下载好最新版本(我使用的是phonegap-2.4.0,此教程用于

浅谈在JAVA项目中LOG4J的使用_java

一.直接使用: //输出到项目文件夹下output1.txt文件中 ////////////////////////////// // DEBUG - Here is some DEBUG // INFO - Here is some INFO // WARN - Here is some WARN // ERROR - Here is some ERROR // FATAL - Here is some FATAL ////////////////////////////// package

列举一下项目中使用的产品和技术

浏览器兼容水平: IE7-10, Firefox和Chrome最新版 开发环境: Windows7+Visual Studio 2010+Oracle TortoiseSVN+Subversion 项目和Bug管理系统 禅道.--一款国内开发的项目管理和bug管理系统. http://www.zentao.net/ 生成环境: Windows Server 2008+IIS7.5+Oracle+.NET(MVC3.0) 需求分析 Enterprise Architect 90天试用版.在学校做课

asp.net-ASP.NET web项目中GridView选中行样式中如何切换选择按钮的图标?

问题描述 ASP.NET web项目中GridView选中行样式中如何切换选择按钮的图标? 我用的ASP.NET 4.0开发的网站项目,GridView控件中选中行的样式,启用控件自带的选择按钮, 想实现选中一行,该行的选择图标按钮会自动改变图标,如何才能实现动态更换CommandField的SelectImageUrl? 在SelectedRowStyle中指定cssclass可以实现吗?这种前台的样式脚本中,能获取GridView的CommnadField控件对象吗? 如有成功的同行能够解答