安卓开发-Android Studio-前端-设置按钮和点击事件
1.新建一个ButtonActivity文件
.
2.在MainActivity中声明
package com.example.ayb.helloworld;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
private Button mBtnTextView;
private Button mBtnButton;//声明添加的Button
private Button mBtnEditText;
private Button mBtnRadioButton;
private Button mBtnCheckBox;
private Button mBtnImageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mBtnTextView = findViewById(R.id.btn_textview);
mBtnButton = findViewById(R.id.btn_button);//找到按钮
mBtnEditText = findViewById(R.id.btn_edittext);
mBtnRadioButton = findViewById(R.id.btn_radiobutton);
mBtnCheckBox = findViewById(R.id.btn_checkbox);
mBtnImageView = findViewById(R.id.btn_imageview);
setOnClickListener();
}
private void setOnClickListener(){
OnClick onClick = new OnClick();
mBtnTextView.setOnClickListener(onClick);
mBtnRadioButton.setOnClickListener(onClick);
mBtnEditText.setOnClickListener(onClick);
mBtnButton.setOnClickListener(onClick);//设置点击事件
mBtnCheckBox.setOnClickListener(onClick);
mBtnImageView.setOnClickListener(onClick);
}
private class OnClick implements View.OnClickListener{
@Override
public void onClick(View v){
Intent intent = null;
switch (v.getId()){
case R.id.btn_textview:
intent = new Intent(MainActivity.this,TextViewActivity.class);
break;
case R.id.btn_button:
intent = new Intent(MainActivity.this,ButtonActivity.class);
break;
case R.id.btn_edittext:
intent = new Intent(MainActivity.this, EditTextActivity.class);
break;
case R.id.btn_radiobutton:
intent = new Intent(MainActivity.this, RadioButtonActivity.class);
break;
case R.id.btn_checkbox:
intent = new Intent(MainActivity.this, CheckBoxAcitivity.class);
break;
case R.id.btn_imageview:
intent = new Intent(MainActivity.this, ImageViewActivity.class);
break;
}
startActivity(intent);
}
}
}
先设置个背景
在Drawable中设置bg_btn4.xml
//被点击
未被点击
3.在ButtonActivity中设置若干个按钮
android:id="@+id/btn_2" 设置id
android:layout_width="match_parent" 匹配父控件
android:layout_height="wrap_content" 根据内容匹配大小
android:layout_below="@+id/btn_1" 由于是相对布局 所以设置在ID为btn_1的按钮下面
android:text="按钮2" 设置按钮上显示的内容
android:textColor="@color/colorAccent" 设置按钮上显示的内容的颜色
android:layout_marginTop="10dp" 相对布局设置与其他控件的间距
android:textSize="20sp" 设置按钮上显示的内容的字体大小
android:background="@drawable/bg_btn4" 设置按钮背景样式
按钮显示界面如下
设置按钮监听事件
在ButtonActivity中的代码如下
public class ButtonActivity extends AppCompatActivity {
private Button mBtn3; //声明按钮
private TextView mTv1; //声明文本框
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_button);
mBtn3 = findViewById(R.id.btn_3);//找到按钮
mBtn3.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
Toast.makeText(ButtonActivity.this,"btn3被点击了",Toast.LENGTH_SHORT).show();//设置输出结果
}
});
mTv1 = findViewById(R.id.tv_1);//找到文本框
mTv1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(ButtonActivity.this,"tv_1被点击了",Toast.LENGTH_SHORT).show();//设置输出结果
}
});
}
public void showToast(View view){
Toast.makeText(this,"再点一次",Toast.LENGTH_SHORT).show();//设置监听显示内容
}
}
效果如下