我想用圆边更改按钮形状,但是当我在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" />
仅更改字体颜色。 我做错了什么?
答案 0 :(得分: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。
答案 1 :(得分: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>
答案 2 :(得分:0)
我已经完成了这个:
<corners android:bottomRightRadius="7dp"
android:bottomLeftRadius="5dp"
android:topLeftRadius="5dp"
android:topRightRadius="7dp"/>