这个是大家在熟悉不过的了,初学者在学习的时候都是最先使用Button进行练习。
他控件的显示设置也很简单,如TextView一样包括:id,宽,高,名称(也就是显示的文字)等的设置。在此不再赘述。
点击事件
Button 最常见的一种使用就是使用监听器,实现点击事件。首先在Activity的onCreate方法中添加如下代码:
方式一:通过匿名内部类的方法来实现监听。
1 2 3 4 5 6 7 8 |
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); } }); |
方式二:通过实现接口的方法来实现监听。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
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文件。
1 2 3 4 5 |
<?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的布局文件中设置按钮的背景:
1 2 3 4 5 |
<Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Button" android:background="@drawable/btn_background"/> |
结果如下: