android view 特效 为何关闭硬件加速,android – 如何在SurfaceView中禁用硬件加速?...

我有这个“确切”的问题:

我有一个玩家和敌人,我正在用14 API进行编译.问题是:从14 API开始,默认情况下启用硬件加速,并且所有绘图方法都不支持它(例如,setShadowLayer(),我想要使用的那个).因此,解决方案很简单,就像上面主题中介绍的那样.问题是:他使用了View,我使用SurfaceView来获得更好的游戏性能.我的Surface View声明如下:

public class Screen extends SurfaceView implements Runnable { // Code }

所以,我刚刚添加到构造函数中:

public Screen(Context context) {

super(context);

holder = getHolder();

setLayerType(View.LAYER_TYPE_SOFTWARE, null); // Here.

}

要在我的SurfaceView上禁用硬件加速,以使我的阴影看起来不显眼,结果:整个SurfaceView停止工作.我无法显示发生了什么,但是当我禁用硬件加速时它只是没有绘制任何东西.我对此非常悲观,因为看起来SurfaceView本身依赖于硬件加速,但是当插入Canvas时,Canvas不能正常运行阴影.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值