Android使用shape来创建按钮

时间:2013-10-13 04:58:23

标签: android xml button layout android-button

嘿,我目前在Android上通过xml创建漂亮的按钮时遇到问题。 我目前使用PNG文件作为按钮工作得很好,但我想保存一些内存,所以我想在xml文件中创建按钮看起来到目前为止工作得很好。

唯一的问题是,我不知道如何将颜色放在形状的中心。使用android:centerColor我只改变按钮垂直中间的颜色,但我想让按钮看起来更像塑料,所以我需要像按钮中间的内圈,更亮的圆圈一样。

在我附上的图片中,您可以看到按钮当前的样子(左侧)和我想要实现的内容(右侧)。这两个按钮都是由我自己制作的,但当然是正确的按钮,而不是xml。

http://img.flashtux.org/img1332cc51010ax1c217432.jpg

我用来创建按钮的代码是

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape>

            <gradient
                android:startColor="#ef0000"
                android:endColor="#993119"
                android:angle="270" />
            <stroke
                android:width="1dp"
                android:color="#661014" />
            <corners
                android:radius="9dp" />
            <padding
                android:left="10dp"
                android:top="10dp"
                android:right="10dp"
                android:bottom="10dp" />
           </shape>
           </item>

</selector>

2 个答案:

答案 0 :(得分:0)

如果你希望你的形状更复杂,你应该忘记xml Drawables并创建你自己的有状态Drawable(类Foo extends Drawable)

答案 1 :(得分:0)

您应该在XML上的渐变元素上使用android:type="radial"