欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android中 Canvas绘制图形,有时候不显示的一个可能原因

程序员文章站 2022-05-25 21:17:46
...

有时候,绘制图形,参数都设置的对,但是真机上就是不显示,很有可能就是需要我们关闭硬件加速,有三种方式
1.在Manifest的application中设置

 <application
        android:name=".MyApplication"
   
        android:hardwareAccelerated="false">
 
    </application>
//但是这种,作用范围太大,如果为一些view播放动画,可能就会出现很卡的现象

2.在Manifest的Activity中设置

  <activity android:name=".MainActivity"
            android:theme="@style/activityTheme"
            android:hardwareAccelerated="false">
        </activity>
//这种就为目标Activity关闭硬件加速,范围小点

3.在目标View上设置

//第一种是在xml文件中
<com.example.kotlinproject.views.CircularRingView
	android:id="@+id/ring_view"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:layerType="software"/>```

//第二种是代码中设置
ring_view.setLayerType(View.LAYER_TYPE_SOFTWARE,null)

这种方式申明这个view拥有一个软件图层,使用软件渲染管道

相关标签: canvas 硬件加速