Android button, xml文件定义形状,代码中修改背景颜色
2014-12-03 06:41
639 查看
1. 首先在drawable文件夹定义一个shape.xml文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#e6e6" />
<corners
android:topLeftRadius="10dp"
android:topRightRadius="10dp"
android:bottomRightRadius="10dp"
android:bottomLeftRadius="10dp" />
<padding
android:left="30dp"
android:top="0dp"
android:right="30dp"
android:bottom="0dp"
/>
</shape>
2. 在main.xml文件中,button使用这个shape.xml,如下:
<Button
android:id="@+id/button_next"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:text="@string/button_next"
android:textSize="@dimen/label_text_size"
android:layout_alignParentBottom="true"
android:layout_centerVertical="true"
android:gravity="center_horizontal|center_vertical"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:background="@drawable/shape"
/>
这时,该button就显示如shape.xml定义的形状。
3. 在代码中动态修改button 背景颜色,代码如下:
GradientDrawable bgShape = (GradientDrawable)buttonNext.getBackground();
bgShape.setColor(Color.BLUE);
<?xml version="1.0" encoding="UTF-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#e6e6" />
<corners
android:topLeftRadius="10dp"
android:topRightRadius="10dp"
android:bottomRightRadius="10dp"
android:bottomLeftRadius="10dp" />
<padding
android:left="30dp"
android:top="0dp"
android:right="30dp"
android:bottom="0dp"
/>
</shape>
2. 在main.xml文件中,button使用这个shape.xml,如下:
<Button
android:id="@+id/button_next"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:text="@string/button_next"
android:textSize="@dimen/label_text_size"
android:layout_alignParentBottom="true"
android:layout_centerVertical="true"
android:gravity="center_horizontal|center_vertical"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:background="@drawable/shape"
/>
这时,该button就显示如shape.xml定义的形状。
3. 在代码中动态修改button 背景颜色,代码如下:
GradientDrawable bgShape = (GradientDrawable)buttonNext.getBackground();
bgShape.setColor(Color.BLUE);
相关文章推荐
- 代码修改包shape背景文件的背景颜色
- Android中xml文件中设置背景颜色、图片
- Android之自定义背景Button按钮、自定义形状Button的全攻略、设置字体颜色
- android 自定义属性的使用一、在res/values文件下定义一个attrs.xml文件,代码如下
- Android xml文件里定义并获取string array,integer array,尺寸和颜色
- android修改layout的形状 用代码方式非xml方式
- Android常见颜色代码的xml资源文件
- 修改Android FloatingActionButton的title的文字颜色及背景颜色实例详解
- 代码修改包shape背景文件的背景颜色
- Eclipse中代码编辑背景颜色修改和XML字体修改
- Android使用xml定义带背景Button(解决ImageButton不能加文字的问题)
- AndroidMenifest.xml(Android清单文件)内部代码分析
- 修改Android中strings.xml文件
- [Android UI界面] 你导入工程的时候遇没遇到过,工程里面的xml文件就有代码,没有可见视图界面,并且写代码的时候还联想不出来
- 如何通过代码动态改变android的窗口背景颜色
- android 读取sd卡(sdcard)图片设置为按钮背景(Button背景设置)代码
- Android修改Framework-res.apk使状态栏背景颜色为黑色或透明
- MFC修改button的颜色、背景、边框
- 修改Android中strings.xml文件, 动态改变数据
- android中用xml文件设置button的各个状态的图片。