如何为线性布局设置xml中的渐变。我想在布局中为视图绘制圆角边缘的边框。发布一些例子,如果有人尝试过。
答案 0 :(得分:7)
按以下方式定义xml并将其放在 res 目录下的 drawable 文件夹中:
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<stroke android:width="6dp" android:color="#FFCCCCCC"/>
<padding android:left="5dp" android:top="5dp" android:right="5dp"
android:bottom="5dp" />
<corners android:radius="8dp" />
<gradient
android:angle="270"
android:startColor="#FFCCCCCC"
android:centerColor="#FFFFFFFF"
android:endColor="#FFCCCCCC"
android:type="linear" />
</shape>
然后,您可以将渐变设置为:
yourView.setBackgroundResource(R.drawable.nameofxml);
答案 1 :(得分:1)
这是代码:
在res / drawable
中创建一个roundedborder.xml文件<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFF"/>
<corners android:radius="6dp" />
<padding android:left="15dp" android:top="15dp"
android:right="15dp" android:bottom="15dp" />
<stroke android:color="#10527c" android:width="2dp" />
<gradient
android:angle="270"
android:startColor="#FFCCCCCC"
android:centerColor="#FFFFFFFF"
android:endColor="#FFCCCCCC"
android:type="linear" />
</shape>
然后将后台资源应用于活动中的布局。
tempLayout.setBackgroundResource(R.drawable.roundedborder);
答案 2 :(得分:0)
您想要创建什么样的视图?对于像ListView这样的东西,我建议你使用下面的实现,只需进行更改即可获得所需的效果。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<gradient
android:centerColor="#E6E6E6"
android:endColor="#CCCCCC"
android:startColor="#FFFFFF"
android:angle="270"/>
<!--
<gradient
android:startColor="#FF7500"
android:centerColor="#FFCC00"
android:endColor="#FF7500"
android:angle="270"/>
-->
<stroke
android:width="1dp"
android:color="#A0000000" />
<padding
android:bottom="8dp"
android:left="5dp"
android:right="5dp"
android:top="8dp" />
<corners android:radius="5dp" />
</shape>