我想在按钮上添加发光效果(在Android Studio中),如下图所示:
我不想要背景图像,所以为了获得这种效果,我尝试在XML文件中进行操作。我为按钮添加了描边,并为按钮提供了阴影(与描边颜色相同)。
我使用了90度角的线性渐变,起始颜色和结束颜色与描边相同,中心颜色与背景颜色相同。请参见以下代码:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<layer-list>
<item android:right="5dp" android:top="0dp">
<shape>
<corners android:radius="50dp" />
<gradient
android:angle="45"
android:startColor="#8008c3fa"
android:endColor="#8008c3fa"
android:type="linear"
/>
</shape>
</item>
<item android:bottom="5dp" android:left="6dp" android:right="10dp" android:top="5dp">
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
<corners
android:radius="50dp"
/>
<gradient
android:angle="90"
android:centerX="50%"
android:centerColor="@color/trans_parent"
android:startColor="#8008c3fa"
android:endColor="#8008c3fa"
android:type="linear"
/>
<padding
android:left="0dp"
android:top="0dp"
android:right="0dp"
android:bottom="0dp"
/>
<size
android:width="270dp"
android:height="60dp"
/>
<stroke
android:width="2.5dp"
android:color="#08c3fa"
/>
</shape>
</item>
</layer-list>
</item>
</selector>
对于上述的XML,我得到了以下结果: 尽管设计和结果图看起来完全不同,但我认为如果我们增加中心颜色高度并保持阴影的渐变效果,它可以工作。但我无法做到相同。