目录

1. Button按钮的点击事件

    1. 内部类

    2. 匿名内部类

    3. 实现onClickListener接口

2.提示

3.单选框 RadioButton

复选框 CheckBox

综合使用


1. Button按钮的点击事件

    1. 内部类

            单个按钮,代码量较多的时候

代码案例

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Button but_login=findViewById(R.id.but_login);

    but_login.setOnClickListener(but_click);
}
private View.OnClickListener but_click = new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Log.i("btn点击事件","but_login按钮被点击");
        Toast.makeText(MainActivity.this,"功能尚未完成,正在开发中",Toast.LENGTH_SHORT).show();
    }
};

    2. 匿名内部类

            单个按钮,并且代码量较少的时候

代码案例

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Button but_login=findViewById(R.id.but_login);

    but_login.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Log.i("btu点击事件","but_login按钮被点击");
            Toast.makeText(MainActivity.this,"功能尚未升级,正在开发中",Toast.LENGTH_SHORT).show();
        }
    });
}

    3. 实现onClickListener接口

              多个按钮的时候

代码案例

public class MainActivity5 extends AppCompatActivity implements View.OnClickListener{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main5);

        Button but_1=findViewById(R.id.but_1);
        Button but_2=findViewById(R.id.but_2);
        Button but_3=findViewById(R.id.but_3);

        but_1.setOnClickListener(this);
        but_2.setOnClickListener(this);
        but_3.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        if (v.getId()==R.id.but_1){
            Toast.makeText(MainActivity5.this,"按钮1已被点击",Toast.LENGTH_SHORT).show();
        }else if(v.getId()==R.id.but_2){
            Toast.makeText(MainActivity5.this,"按钮2已被点击",Toast.LENGTH_SHORT).show();
        }else if(v.getId()==R.id.but_3) {
            Toast.makeText(MainActivity5.this, "按钮3已被点击", Toast.LENGTH_SHORT).show();
        }
    }
}

2.提示

1.在控制台输出

在android中依然是可用的,但是不建议使用

System.out.println("hello world");

2.后台提示

        主要是给开发人员使用

 第一个参数 需要填写字符串 标签
 第二个参数 需要填写字符串 输出内容

Log.i("登录操作","登录成功");

3.前台提示

      主要是给用户使用  

Toast.makeText(MainActivity.this, "登录登录", Toast.LENGTH_SHORT).show();

3.单选框 RadioButton

1.单选框的独立存在: 主要用在同意协议等

2.单选框的点击事件(点击事件用在什么地方?)

单选框的点击事件是设置在RadioGroup上

onCheckedChangeListener()

3..单选框一般情况下都是多个出现:比如性别,必须跟RadioGroup结合使用

<RadioGroup
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    orientation="vertical">
    
    <RadioButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="true"
        android:text="男"></RadioButton>
    
    <RadioButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="女"></RadioButton>
        
</RadioGroup>

代码案例

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main3);


    RadioGroup radioGroup = findViewById(R.id.rgp_gender);

    radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(RadioGroup radioGroup, int i) {
            RadioButton radioButton=findViewById(i);
            Toast.makeText(getApplicationContext(),"按钮组值发生了改变,你选了"+radioButton.getText(),Toast.LENGTH_SHORT).show();
        }
    });
}

复选框 CheckBox

1.复选框的独立使用:主要用于 同意协议

2.复选框的多个使用:多选

3.复选框的点击事件:

复选框的点击事件是设置在checkbox上

onCheckedChangeListener()

代码案例

前台页面代码

<TextView
    android:id="@+id/textView3"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="请选择下面手机是安卓系统的(多选)" />

<CheckBox
    android:id="@+id/xiaomi"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="小米" />

<CheckBox
    android:id="@+id/pingguo"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="苹果" />

<CheckBox
    android:id="@+id/huawei"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="华为" />

<CheckBox
    android:id="@+id/oppo"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="oppo" />

后台java代码

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main4);

    CheckBox xiaomi=findViewById(R.id.xiaomi);
    CheckBox huawei=findViewById(R.id.huawei);
    CheckBox pingguo=findViewById(R.id.pingguo);
    CheckBox oppo=findViewById(R.id.oppo);

    xiaomi.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
            if (b){
                String choice = compoundButton.getText().toString();
                Toast.makeText(MainActivity4.this,choice,Toast.LENGTH_SHORT).show();
            }
        }
    });
    huawei.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
            if (b){
                String choice = compoundButton.getText().toString();
                Toast.makeText(MainActivity4.this,choice,Toast.LENGTH_SHORT).show();
            }
        }
    });
    pingguo.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
            if (b){
                String choice = compoundButton.getText().toString();
                Toast.makeText(MainActivity4.this,choice,Toast.LENGTH_SHORT).show();
            }
        }
    });
    oppo.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
            if (b){
                String choice = compoundButton.getText().toString();
                Toast.makeText(MainActivity4.this,choice,Toast.LENGTH_SHORT).show();
            }
        }
    });
}

综合使用

        如何取值 getText().toString();

代码案例

1.前台页面代码

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">

    <TextView
        android:id="@+id/textView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="账号:" />

    <EditText
        android:id="@+id/ad_zh"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:ems="10"
        android:inputType="number" />

</LinearLayout>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">

    <TextView
        android:id="@+id/textView5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="密码:" />

    <EditText
        android:id="@+id/ad_mi"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:ems="10"
        android:inputType="textPassword" />
</LinearLayout>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">

    <TextView
        android:id="@+id/textView6"
        android:layout_width="40dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="密码重复:" />

    <EditText
        android:id="@+id/ad_fu"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:ems="10"
        android:inputType="textPassword" />
</LinearLayout>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">

    <TextView
        android:layout_marginTop="7dp"
        android:id="@+id/textView8"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="性别:" />

    <RadioGroup
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        >

        <RadioButton
            android:id="@+id/re_man"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="男" />

        <RadioButton
            android:layout_marginStart="20dp"
            android:id="@+id/re_women"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="女" />
    </RadioGroup>



</LinearLayout>

<CheckBox
    android:layout_marginTop="150dp"
    android:id="@+id/cb_ad"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="你的年龄是否成年" />

<CheckBox
    android:id="@+id/cb_ac"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="请阅读并勾选协议" />

<Button
    android:id="@+id/but_logins"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="登录" />

后台Java代码

public class MainActivity6 extends AppCompatActivity {
    private CheckBox cb_ac;
    private  CheckBox cb_ab;
    private Button but_logins;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main6);

        cb_ac=findViewById(R.id.cb_ac);
        cb_ab=findViewById(R.id.cb_ad);
        but_logins=findViewById(R.id.but_logins);

        but_logins.setOnClickListener(but_click);
    }
    protected View.OnClickListener but_click = new View.OnClickListener() {
        @Override
        public void onClick(View v) {
           boolean flag=cb_ab.isChecked();
           boolean flai=cb_ac.isChecked();
           if (flag&& flai){
               EditText ad_zh=findViewById(R.id.ad_zh);
               EditText ad_mi=findViewById(R.id.ad_mi);
               EditText ad_fu=findViewById(R.id.ad_fu);

               String repwd=ad_fu.getText().toString();
               String pwd=ad_mi.getText().toString();
               String phonenum=ad_zh.getText().toString();

               RadioButton re_man=findViewById(R.id.re_man);
               RadioButton re_woman=findViewById(R.id.re_women);
               String sex="";
               if (re_man.isChecked()){
                   sex=re_man.getText().toString();
               }else {
                   sex=re_woman.getText().toString();
               }
               Toast.makeText(MainActivity6.this, "电话号码是:"+phonenum+",密码是:"+pwd+"," +
                       "第二次输入的密码是:"+repwd+",性别是:"+sex, Toast.LENGTH_LONG).show();
           }else {
               Toast.makeText(MainActivity6.this,"请勾选协议",Toast.LENGTH_SHORT).show();
           }
        }
    };
}

实现图

android dialog 按钮选中 android单选框选中事件_ide