关于用phonegap 3.0+ 打包后sencha touch按钮点击切换动画延迟接近一秒的以及界面闪烁的解决方案
android的webview对硬件加速的支持貌似很不理想,在开启硬件加速的情况下,css3这些需要调用硬件加速的样式会大幅拖慢html5的webapp,在htc的部分手机上还会因开启硬件加速而导致闪屏等现象。
在phonegap 3.0之前,都是用户自己来配置AndroidMainifest.xml文件,可能都没注意到这一点,在phonegap 3.0+之后,phonegap项目的创建都是通过phonegap的command line指令来创建生成的,在生成的项目中,phonegap对项目默认开启了强制硬件加速,这时,sencha touch的项目中的带动画的页面切换时会调用系统的gpu进行计算来运行动画,此时的切换动画会变得相对平滑,但是随之而来的就是让人无法忍受的延迟。
解决上述问题的一种方案就是关闭强制硬件加速,打开phonegap创建的项目中的AndroidMainfest.xml,你会发现在application跟mainfest标签上有个属性
android:hardwareAccelerated="true"
将这两个标签的的属性修改为false,或者将其去掉,
这时,系统会通过cpu来计算模拟动画,你会发现之前的延迟都消失了,
在4核以上的cpu上性能提升明显,但部分动画的切换会没有之前流畅,不是非常明显,
大家可以根据自己的实际情况来设置这一属性
关于用phonegap 3.0+ 打包后sencha touch按钮点击切换动画延迟接近一秒的以及界面闪烁的解决方案的更多相关文章
- sencha touch 监听视图切换动画(animation)
		var animation = this.getLayout().getAnimation(); //添加监听 animation.on({ scope: this, animationend: 'o ... 
- Android5.0新特性之——按钮点击效果动画(涟漪效果)
		Android5.0 Material Design设计的动画效果 RippleDrawable涟漪效果 涟漪效果是Android5.0以后的新特性.为了兼容性,建议新建drawable-v21文件夹 ... 
- sencha touch打包成安装程序
		为了更好地向大家演示如何打包一个sencha touch的项目,我们用sencha cmd创建一个演示项目,如果你的sencha cmd环境还没有配置,请参照 sencha touch 入门系列 (二 ... 
- sencha touch 扩展篇之将sencha touch打包成安装程序(上)- 使用sencha cmd打包安装程序
		由于最近一直忙着android原生的开发,很久没有更新博客了,官方的sencha cmd工具功能非常强大,创建项目,压缩项目,打包安装程序都能轻松实现,这讲我们就给大家介绍下如何使用sencha cm ... 
- sencha touch 入门系列 扩展篇之sencha touch 项目打包压缩
		经常有新手同学抱怨说sencha touch的项目加载速度为什么这么慢,经常要10秒左右的时间甚至更多, 大家都知道,sencha touch开发的项目中引用了大量的js文件,当我们打开项目时,st的 ... 
- sencha touch 问题汇总
		做sencha touch有一段时间了,目前而言,sencha touch在android上问题比较严重,在此对android中sencha touch的问题做一些汇总: 1.内存问题: 打包成安装程 ... 
- 关于sencha touch在华为、红米等部分手机下hide事件失效,msgbox无法关闭的解决方案(已更新最新解决方案)
		(急着解决问题的同学可以直接跳最底部查看最终的解决方案) 问题描述 因为前段时间抢到了华为荣耀3c,所以做项目的时候就用荣耀3c测试了一下项目, 结果发现在华为的emotion ui上sencha t ... 
- sencha touch NavigationView
		NavigationView 是官方根据Container控件扩展而来的,由一个导航栏和一个card组成,具备导航和返回时自动销毁当前界面的功能,非常适合新手使用. 其中导航栏的代码如下: Ext.d ... 
- Sencha touch 初体验
		一.什么是Sencha Touch? Sencha Touch是一个应用手持移动设备的前端js框架,与extjs是同一个门派的,它继承了extjs的优点和缺点.功能很强大,效果很炫丽,效率不高. 二. ... 
随机推荐
- git中文乱码解决方案
			解决方案: 在bash提示符下输入: git config --global core.quotepath false core.quotepath设为false的话,就不会对0x80以上的字符进行q ... 
- MySQL下查询锁信息
			SHOW PROCESSLIST;SHOW OPEN TABLES WHERE In_use > 0; #运行线程 SHOW GLOBAL STATUS LIKE 'Threads_runn ... 
- Thinkphp3.2版本Controller和Action的访问方法
			一.3.2版本以前controller和action的访问方式在3.2版本以前如果Controller=c.Action=a的话,访问规则如下:http://localhost:81/demo1/in ... 
- /usr/include/glib-2.0/glib/gtypes.h:34:24: fatal error: glibconfig.h: No such file or directory
			cc -DDEBUG -mtune=core2 -O2 \ -onvideo nvideo.c \ -I/usr/include/atk-1.0 \ -I/usr/include/cairo \ -I ... 
- C++中static_cast, dynamic_cast使用方法
			前言 Android的Framework层源代码中有非常多强制类型转换函数的调用.写惯了C代码的人一般都习惯以下这样的强制转换方式: double a = 89; int b = (int)a; 可是 ... 
- Select显示多级分类列表
			<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ... 
- 用CSS创建打印页面
			用CSS创建打印页面,不必为打印而专门建立一个HTML文件,可以节省一些体力,其前提是按“WEB标准”用CSS+DIV布局HTML页面. 第一.在HTML页面加入为打印机设置的CSS文件 <li ... 
- vector 排序
			#include <vector> #include <algorithm> 一.vector保存的是基础数据类型(int.char.float等) vector<int ... 
- 鼠标捕获(setCapture,releaseCapture)的学习
			鼠标捕获(setCapture)作用是将鼠标事件捕获到当前文档的指定的对象——对指定的对象设置鼠标捕获.这个对象会为当前应用程序或整个系统接收所有鼠标事件. 所谓鼠标捕获,是指对鼠标事件(onmous ... 
- iOS 自动编译脚本
			#!/bin/sh #项目路径 PROJECT_DIR="/Users/mac/Desktop/_housemart" #临时项目 PROJECT_TEMP_DIR="/ ... 
