2012-04-23 85 views
0

我想改变圆边按钮形状没有改变,但不知何故,当我在styles.xml定义它,它不工作按钮形状风格

<?xml version="1.0" encoding="utf-8"?> 
<resources> 

    <style name="ButtonStyle"> 
     <item name="android:textColor">#00FFFF</item> 
     <item name="android:shape">rectangle</item> 
     <item name="android:bottomRightRadius">7dp</item> 
     <item name="android:bottomLeftRadius">7dp</item> 
     <item name="android:topRightRadius">7dp</item> 
     <item name="android:topLeftRadius">7dp</item> 
    </style> 

</resources> 

的main.xml按钮

<Button 
    android:id="@+id/button4" 
    style="@style/ButtonStyle" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_marginRight="31dp" 
    android:layout_toLeftOf="@+id/button3" 
    android:text="@string/sSettings" /> 

只更改字体颜色。 我在做什么错?

+1

检查内容:HTTP://nishantvnair.wordpress.com/2010/11/09/customize-button-in-android/ – 2012-04-23 08:47:37

回答

3

您必须声明为按钮背景绘制。 在res/drawables中执行此操作。创建一个新的文件,绘制这样的:

/res/drawable/button_drawable.xml

<?xml version="1.0" encoding="utf-8"?> 
<shape 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle"> 
    <corners 
     android:radius="7dp" /> 
    <solid android:color="#666666"/> 

</shape> 

然后在你的布局做:

<Button 
    android:id="@+id/button4" 
    style="@style/ButtonStyle" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:background="@drawable/button_drawable" 
    android:layout_marginRight="31dp" 
    android:layout_toLeftOf="@+id/button3" 
    android:text="@string/sSettings" /> 

,如果你要设置的每个角落,你也可以这样做:

<corners android:bottomRightRadius="7dp" 
    android:bottomLeftRadius="7dp" 
    android:topLeftRadius="7dp" 
    android:topRightRadius="7dp"/> 

有一个look here所有的选项。

0

我已经完成这件事吧:

<corners android:bottomRightRadius="7dp" 
    android:bottomLeftRadius="5dp" 
    android:topLeftRadius="5dp" 
    android:topRightRadius="7dp"/> 
1

将形状定义为可绘制的rounded_corners.xml,并在样式中将其设置为按钮的背景。

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

    <solid android:color="#00FFFF" /> 

    <corners 
     android:bottomLeftRadius="5dp" 
     android:bottomRightRadius="7dp" 
     android:topLeftRadius="5dp" 
     android:topRightRadius="7dp" /> 

</shape> 

和风格:

<style name="Button">    
     <item name="android:background">@drawable/rounded_corners</item>  
</style>