Android教程2020 - 系列总览

本文链接

Button能对用户的点击行为作出反应。

在xml文件中放置一个button。

1
2
3
4
5
<Button
android:id="@+id/btn"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="@string/self_destruct" />

要想监听到button的点击事件,我们在Activity中进行设置。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class MyActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setContentView(R.layout.content_layout_id);

final Button button = findViewById(R.id.button_id);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// 这里是按钮点击事件,在主线程执行
}
});
}
}

上面我们用到了View.OnClickListener。button被点击后会执行onClick方法。
系统会在App的主线程中执行onClick方法。我们可以在这里面更新UI。但不要做太耗时的操作。

我们注意到OnClickListener其实是View中的一个接口。setOnClickListener也是View的一个方法。
换句话说,就算我们这里用的不是button,也可以用这样的方式来监听点击事件。
View.setOnClickListener(View.OnClickListener())
以后会遇到TextView,ImageView监听点击事件,或是整个Layout来监听点击事件。

更多请参考官方文档LinearLayout