我的背景是纯白色,上面有些云。当用户单击屏幕上的对象时,背景图像的白色部分会更改颜色。颜色变化不会影响云层。
直到现在,我一直在photoshop中制作每个单独的背景图像,并将它们加载到onclick方法中。但是现在我想知道是否可能只有一个背景图像,并且当用户单击一个对象时,android可以使用预定义的colors.xml文件更改图像的背景颜色吗?
答案 0 :(得分:0)
具有用于云的图像,并将布局的背景色设置为白色。当用户单击对象时,视图上将有一个侦听器,以侦听单击并动态更改布局的颜色。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/YourPicture"
android:id=@+id/root_layout>
<-- your Views-->
</LinearLayout>
您的活动文件:
yourView.setOnClickListener(v -> {
rootLayout.setBackground(ContextCompat.getDrawable(context, R.drawable.draw));
});
答案 1 :(得分:0)
这取决于您如何绘制图像。如果您要更改的背景是透明的,则可以执行以下操作:
imageView.setBackgroundColor(color)
答案 2 :(得分:0)
不,我认为不可能。