Android Canvas 改变背景颜色

我有一个有两个 View 的应用

XML 复制代码
<com.myexample.ui.view.BackgroundView 
        android:id="@+id/id_draw_canvas_classroom" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:layout_marginBottom="3dp" 
        android:layout_marginLeft="5dp" 
        android:layout_marginRight="5dp" 
        android:layout_marginTop="3dp" 
        android:layout_weight="1" 
        android:background="#FFFFFFFF" /> 
 
    <com.myexample.ui.view.FrontView 
        android:id="@+id/id_draw_canvas_user" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:layout_marginBottom="3dp" 
        android:layout_marginLeft="5dp" 
        android:layout_marginRight="5dp" 
        android:layout_marginTop="3dp" 
        android:layout_weight="1" 
        android:background="#00000000" /> 

这个view是重叠的,我在后台的view中加载了一段时间的信息。在那段时间里,我想将 FrontView 设置为白色,然后(当背景完成加载时)变为透明。

在 FrontView 中,我有一个带有位图的 Canvas 。正在工作,如果我想将背景设置为透明,我可以这样做

java 复制代码
canvas.drawColor(0); 

设置背景为白色

java 复制代码
canvas.drawColor(-1); 

如果无法将白色更改为透明,试试这个:

java 复制代码
/* 
* A = Alpha a.k.a. transparency 
* R = Red color 
* G = Green color 
* B = Blue color 
* 
* All of them have a range from 0 to 255 
*/ 
canvas.drawARGB(0, 225, 225, 255); 

或者

java 复制代码
canvas.drawColor(Color.TRANSPARENT, PorterDuff.Mode.CLEAR); 

第一个选项更好,因为它更精确,例如,如果您想将其设置得不那么透明。

相关推荐
李子红了时40 分钟前
阿狸舞台APP(安卓端手机EncFS解密+压缩包解压+视频播放)
android·音视频
事圆则缓42 分钟前
Android 使用 Jenkins 实现 CI/CD,并用 SonarQube 建立质量门禁
android·ci/cd·jenkins
其实防守也摸鱼1 小时前
DeepSeek Harness 开源贡献手记:从 Issue 到 Merge 的完整旅程
android·数据库·学习·ai·oracle·自动化
恋猫de小郭1 小时前
Android CLI 支持 AI Agent 通过 Device Streaming 调试云真机
android·前端·flutter
素师良码19 小时前
第5篇:显示驱动必备调试工具浅析
android
维克兜率天20 小时前
【维克】配对交易的季节性:哪些品种适合长拿?
android·开发语言·笔记·python·算法·kotlin·量化
墨天梦20 小时前
B06_XML控件布局与ViewBinding
android·kotlin
晚风叙码20 小时前
MySQL 表的操作:从建表到删表,一篇讲清楚
android·mysql·oracle
事圆则缓1 天前
Android 性能优化常见工具与使用场景:从症状到证据的排查指南
android·性能优化
avi91111 天前
Unity 非后台,非自动构建,但统计报表 BuildReport ,构建自动化系统C#
android·webserver·ios打包·admin·c#后台·unity打包系统·unity自动构建