android studio 按键点击事件的实现方法
2023-12-14 16:06:16
一、onClick属性:
1)、在activity_main.xml中设置button的onClick属性:
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="开灯"
android:onClick="onClick"
app:layout_constraintBottom_toTopOf="@+id/textView"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
?2)、?在MainActivity.java,添加:? ? ??
public void onclick(View view) {
if(buttonled.getText().toString().equals("开灯")){
textviewf.setText("灯已开!");
buttonled.setText("关灯");
}
else if(buttonled.getText().toString().equals("关灯")) {
buttonled.setText("开灯");
textviewf.setText("灯已关!");
}
}
二、onClickListener
在MainActivity.java,添加:
buttonled.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(buttonled.getText().toString().equals("开灯")){
textviewf.setText("灯已开!");
buttonled.setText("关灯");
}
else if(buttonled.getText().toString().equals("关灯")) {
buttonled.setText("开灯");
textviewf.setText("灯已关!");
}
}
});
三、重写onClick:
在MainActivity.java,添加:
buttonled.setOnClickListener(this);
@Override
public void onClick(View view) {
if(buttonled.getText().toString().equals("开灯")){
textviewf.setText("灯已开!");
buttonled.setText("关灯");
}
else if(buttonled.getText().toString().equals("关灯")) {
buttonled.setText("开灯");
textviewf.setText("灯已关!");
}
}
四、创建内部类实现onClickListener:
在MainActivity.java,添加:
buttonled.setOnClickListener(new FButton());
private class FButton implements View.OnClickListener{
public void onClick(View v){
if(buttonled.getText().toString().equals("开灯")){
textviewf.setText("灯已开!");
buttonled.setText("关灯");
}
else if(buttonled.getText().toString().equals("关灯")) {
buttonled.setText("开灯");
textviewf.setText("灯已关!");
}
}
}
五、运行效果图:



文章来源:https://blog.csdn.net/corlin6688/article/details/134994423
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!