android4.0适配

1.不要想从系统设置上能取得是否gpu加速是否勾选。
我没能成功,你行吗?可以试试。

application,activity,设置不加速,有鬼用,draw时该加速的,还是被加了速。除了只能在xml上加,又不能在代码上加。想通过代码做反射还不行。恶心。

view attach到window manger之前,判断,nnd全部是false。

可靠的,信得过的还是onDraw(Canvas c)
的c

c.getClass可以知道是否是加速了可不用反射。isHardware...也是可以用,此方法打包在2.x下,还是利用反射。
通用解决方案。
onDraw(c){
if(加速){
跑你加速的逻辑或者我们还想用旧的,让view setLayerType LAYER_TYPE_SOFTWARE后再postInvalidate()去吧。
}else{
旧的去吧。
}

}

Dialog可能也会出问题。
show之前设置参数为真实的高和宽

屏蔽掉一些不支持的方法。完。

猜你喜欢

转载自birdbrother.iteye.com/blog/1327678