如何设置形状的不透明度?
我已经知道如何设置背景图像的不透明度,但我需要设置我的形状对象的不透明度。
在我的Android应用程序中,我有这样的:
我想使这个黑色区域有点透明,就像这里,例如我可以看到圆圈,虽然这个“欢迎…”:
这是我的形状代码:
<?xml version="1.0" encoding="UTF-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/shape_my""> <stroke android:width="4dp" android:color="#636161" /> <padding android:left="20dp" android:top="20dp" android:right="20dp" android:bottom="20dp" /> <corners android:radius="24dp" /> </shape>
我怎样才能做到这一点?
一般来说,只需在创build形状时定义一个稍微透明的颜色。
你可以通过设置颜色alpha通道来实现。
#FF000000
会让你一个纯黑色,而#00000000
会让你100%透明的黑色 (以及它不是显而易见的黑色)。
配色scheme如下#AARRGGBB
A代表alpha通道,R代表红色,G代表绿色,B代表蓝色。
如果您在Java中设置颜色,则同样适用。 在那里它只会看起来像0xFF000000
。
UPDATE
在你的情况下,你必须添加一个solid
节点。 像下面一样。
<?xml version="1.0" encoding="UTF-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/shape_my""> <stroke android:width="4dp" android:color="#636161" /> <padding android:left="20dp" android:top="20dp" android:right="20dp" android:bottom="20dp" /> <corners android:radius="24dp" /> <solid android:color="#88000000" /> </shape>
这里的颜色是半透明的黑色。
使用下面的代码作为progress.xml:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@android:id/background"> <shape> <corners android:radius="5dip" /> <gradient android:startColor="#ff9d9e9d" android:centerColor="#ff5a5d5a" android:centerY="0.75" android:endColor="#ff747674" android:angle="270" /> </shape> </item> <item android:id="@android:id/secondaryProgress"> <clip> <shape> <solid android:color="#00000000" /> </shape> </clip> </item> <item android:id="@android:id/progress"> <clip> <shape> <solid android:color="#00000000" /> </shape> </clip> </item> </layer-list>
哪里:
- “进步”是拇指前的进展,“次进展”是拇指后的进展。
- color =“#00000000”是一个完美的透明度
- 注:上面的文件是从默认的Android水库,是2.3.7,它是可用的android源码:框架/基地/核心/水库/水库/绘制/进展水平文件。 对于较新的版本,您必须find对应于您的android版本的seekbar的默认可绘制文件。
之后,在包含xml的布局中使用它:
<SeekBar android:id="@+id/myseekbar" ... android:progressDrawable="@drawable/progress" />
您还可以使用自定义图标seek_thumb.png自定义缩略图:
android:thumb="@drawable/seek_thumb"
使用这个,我已经写到我的应用程序,
<?xml version="1.0" encoding="utf-8"?> <!-- res/drawable/rounded_edittext.xml --> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:padding="10dp"> <solid android:color="#882C383E"/> <corners android:bottomRightRadius="5dp" android:bottomLeftRadius="5dp" android:topLeftRadius="5dp" android:topRightRadius="5dp"/> </shape>