我想画一幅有渐变背景的图像。我已经创建了一个可绘制的位图资源,如下面的
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/bg"
android:tileMode="repeat"
android:gravity="bottom"
/>
如您所知,在定义波浪模式时,重力将被忽略。我尝试创建自己的类,它继承自BitmapDrawable,但我没能成功。请帮助我应用这两个属性:波浪模式和重力。
我没有弄清楚这个问题。这里的目标是什么?
它是否使用了带有tileMode的渐变图像(如.png.jpg)?
还是使用了透明图标并使其成为背景渐变?
此外,当你使用tileMode时,为什么需要重力?tileMode意味着用相同的图像平铺位图的整个区域。由于它将对整个图像进行处理,因此在该图像上没有重力,因为所有图像都将被填充。
如果目标是在屏幕的某些部分使用此可绘制位图,请将其添加到您的布局中:
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/mydrawablebitmap"
android:id="@+id/imageview1" />
您可以将其放在layout.xml中,设置自己的宽度和高度,并根据自己的喜好对齐。
如果目标是使用图像并制作其背景,这里是你使用它的方法:
在可绘制的文件夹中创建gradient.xml:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#E0E0E0"
android:endColor="#FFFFFF"
android:angle="-90"/>
</shape>
然后将此图像视图添加到您的布局中:
<ImageView
android:id="@+id/myimagewithgradientbackground"
android:layout_width="match_parent"
android:layout_height="160dp"
android:background="@drawable/gradient"
android:src="@drawable/foregroundimage" />
如果你给我更多关于这个问题的细节,我会继续编辑我的答案。