效果图片:
常用方法(只写重点):
1.设置文字大小和颜色
android:textSize="20dp"
android:textColor="@color/colorAccent"
2.自定义背景形状(设置圆角按钮)
3.android:textAllCaps"false" 取消默认大写
4.enabled:false //设为不可操作
在drawable文件新建一个Drawable resource file文件
选择shape
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
//设置背景颜色
<solid
android:color="@color/colorPrimaryDark"/>
//设置角度
<corners
android:radius="10dp" />
</shape>
在Button里的background属性调用这个文件
3.自定义按压效果(按压变色)
在drawable文件新建一个Drawable resource file文件
选择selector
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"> //点击情况
<shape>
<solid
android:color="#D5B32B" /> //修改颜色
<corners
android:radius="10dp"/> //修改角度
</shape>
</item>
<item android:state_pressed="false"> //未点击情况
<shape>
<solid android:color="#DDDD22"/>
<corners android:radius="10dp" />
</shape>
</item>
</selector>
在Button里的background属性调用这个文件
4.设置监听
mBt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(ButtonActivity.this, "点击Button4按钮!", Toast.LENGTH_SHORT).show();
}
});
代码实现:
activity_button:布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_button"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.example.administrator.exercise.ButtonActivity">
<!--设置文字大小和颜色-->
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮1"
android:id="@+id/mBt"
android:textSize="20dp"
android:textColor="@color/colorAccent"
/>
<!--自定义背景形状-->
<Button
android:layout_marginTop="10dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮2"
android:id="@+id/mBt1"
android:background="@drawable/bg_bt" //调用自定义布局
/>
<!--自定义按压效果-->
<Button
android:layout_marginTop="10dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮3"
android:id="@+id/mBt2"
android:background="@drawable/bg_bt1" //调用自定义布局
/>
<!--设置监听-->
<Button
android:layout_marginTop="10dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮4"
android:id="@+id/mBt3"
/>
</LinearLayout>
bg_bt:自定义背景形状
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
//设置背景颜色
<solid
android:color="@color/colorPrimaryDark"/>
//设置角度
<corners
android:radius="10dp" />
</shape>
bg_bt1:自定义按压效果
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"> //点击情况
<shape>
<solid
android:color="#D5B32B" /> //修改颜色
<corners
android:radius="10dp"/> //修改角度
</shape>
</item>
<item android:state_pressed="false"> //未点击情况
<shape>
<solid android:color="#DDDD22"/>
<corners android:radius="10dp" />
</shape>
</item>
</selector>
ButtonActivity:java文件
package com.example.administrator.exercise;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class ButtonActivity extends AppCompatActivity {
Button mBt; //创建butto
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_button); //添加布局
mBt = (Button) findViewById(R.id.mBt3); //关联button对象
mBt.setOnClickListener(new View.OnClickListener() { //设置监听
@Override
public void onClick(View view) {
Toast.makeText(ButtonActivity.this, "点击Button4按钮!",Toast.LENGTH_SHORT).show(); //显示Toast文字
}
});
}
}