SmartRefreshLayout包裹RecyclerView点击item或者打开新页面返回出现背景变黑问题

SmartRefreshLayout包裹RecyclerView出现背景变黑,原因是我在AndroidManifest.xml设置了

<application
    android:hardwareAccelerated="false"/> //false关闭硬件加速 true打开硬件加速

这时我们将这个属性设置为true即可

application里面android:hardwareAccelerated属性设置false导致全局硬件加速关闭,网上搜索资料发现可以在Application、Activity、Window、View分别设置android:hardwareAccelerated属性

控制硬加速
  你可以在以下级别上分别控制硬加速:

Application中设置全局关闭硬件加速

<application   android:hardwareAccelerated="false">

</application>

指定Activity中设置关闭硬件加速

<application   android:hardwareAccelerated="true">

       <activity   android:hardwareAccelerated="false" />

</application>

Window(暂时用不得,感兴趣的朋友可以自行百度)

View中使用

                禁止某个View的硬件加速,注:当前不能在view级别设置硬件加速,view层有除禁止硬件加速之外的其它功能

                 view.setLayerType(View.LAYER_TYPE_SOFTWARE,null);

判段一个View是否能被硬加速,有时一个应用了解是否启用了硬件加速是很有用的,对那些自定义View之类的东西尤其重要.在你的应用做了一些不被最新的管线所支持的自定义绘制时这更加重要.

  有两种方法可以检查应用是否被硬件加速:

        view.isHardwareAccelerated():如果View附加到一个硬件加速的window上就返回true.

        canvas.isHardwareAccelerated():如果Canvas被硬件加速了就返回true.

  如果你必须在你的绘制代码中做这个,应使用Canvas.isHardwareAccelerated()而不是View.isHardwareAccelerated().当一个view附加到一个硬件硬加速的window上,它仍可以使用非硬件加速的Canvas进行绘制操作.比如当为了高速缓存而把一个view画到一个bitmap中.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值