这个是大家在熟悉不过的了,初学者在学习的时候都是最先使用Button进行练习。
他控件的显示设置也很简单,如TextView一样包括:id,宽,高,名称(也就是显示的文字)等的设置。在此不再赘述。
点击事件
Button 最常见的一种使用就是使用监听器,实现点击事件。首先在Activity的onCreate方法中添加如下代码:
方式一:通过匿名内部类的方法来实现监听。
Button btnSecond = (Button) findViewById(R.id.btnSecond);
btnSecond.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intentSecond = new Intent(MainActivity.this,MainActivity.class);
startActivity(intentSecond);
}
});
方式二:通过实现接口的方法来实现监听。
public class MainActivity extends BaseActivity implements View.OnClickListener {
private Button btnSecond;
@Override
protected void onCreate(Bundle savedInstanceState) {
Log.d("Activity", this.toString());
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnSecond = (Button) findViewById(R.id.btnSecond);
btnSecond.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId()){
case R.id.btnSecond:
Intent intentSecond = new Intent(MainActivity.this,SecondActivity.class);
startActivity(intentSecond);
break;
default:
break;
}
}
}
按钮背景设置
此处背景的设置是在AndroidStudio软件中设置运行的,Ecplise中可能稍有不同。
在layout布局文件中添加代码:android:background=""进行设置,属性值可以是十六进制的背景色,例如:“#ff00ff”;也可以是引用values中自己设定的color值,例如:”@color/red”;也可以是drawable中自己设置的xml文件,例如:”@drawable/btn_background”。
前两种主要用于设置纯色的背景,但是这种设置并不人性化,因为我们都知道,通常一个按钮当我们按下去的时候他的颜色会变深,以通知我们选中了按钮。这是比较人性化的。但是纯色的背景只有一个,我们按下的时候并不知道是否选中,因此我们需要设置两种颜色来当做按钮的背景。这种只能通过第三种方法来实现。
在drawable中新建一个xml文件。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@mipmap/buttonpressed_pink" android:state_pressed="true"/>
<item android:drawable="@mipmap/button_pink"/>
</selector>
在layout的布局文件中设置按钮的背景:
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button"
android:background="@drawable/btn_background"/>
结果如下: