將主活動中的監聽器封裝起來
package com.example.myapplication;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
private Button mBtnTextView;
private Button mBtnButton;
private Button mBtnEditText;
private Button mBtnRadioButton;
@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);
setListeners();
}
private void setListeners()
{
OnClick onClick =new OnClick();
mBtnEditText.setOnClickListener(onClick);
mBtnTextView.setOnClickListener(onClick);
mBtnButton.setOnClickListener(onClick);
mBtnRadioButton.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;
}
startActivity(intent);
}
}
}
RadioButton組件
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<RadioGroup
android:id="@+id/gr_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<RadioButton
android:id="@+id/rb_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="男"
android:textSize="20sp"
android:textColor="#FF6600"
/>
<RadioButton
android:id="@+id/rb_2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="女"
android:textSize="20sp"
android:textColor="#FF6600"
android:layout_below="@id/rb_1"
/>
</RadioGroup>
</RelativeLayout>