Android—常用控件(三)选择框

来源:互联网 发布:2017网络教育英语统考 编辑:程序博客网 时间:2024/05/17 06:51

一、RadioButton(单选框)

1、RadioButton:必须要放到RadioGroup中(RadioGroup中的android:orientation属性指定按钮的排列方式)

2、必须指定id

3、android:checked  是否选中


实例:



代码:

布局文件

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical" android:layout_width="match_parent"    android:layout_height="match_parent">    <RadioGroup        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:id="@+id/rg_main_sex"        >        <RadioButton            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="男"            android:id="@+id/rb_main_boy"            android:checked="true"            />        <RadioButton            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="女"            android:id="@+id/rb_main_girl"            />    </RadioGroup>    <Button        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="确定"        android:onClick="sel"        /></LinearLayout>
Java代码

package com.example.myapplication;import android.os.Bundle;import android.support.annotation.IdRes;import android.support.annotation.Nullable;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.RadioButton;import android.widget.RadioGroup;import android.widget.Toast;/** * Created by Administrator on 2017/6/11 0011. */public class RadioActivity extends AppCompatActivity {    private RadioGroup rg_main_sex;    private RadioButton rb_main_boy;    private RadioButton rb_main_girl;    @Override    protected void onCreate(@Nullable Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.radiogroup);        rg_main_sex = (RadioGroup) findViewById(R.id.rg_main_sex);    }    public void sel(View view){        //获取单选组中 被选中的单选框的ID        int checkedId=rg_main_sex.getCheckedRadioButtonId();        //再根据被选中的单选框的ID 获取 该单选框        RadioButton radioButton= (RadioButton) findViewById(checkedId);        String sex=radioButton.getText().toString();        Toast.makeText(RadioActivity.this, ""+sex, Toast.LENGTH_LONG).show();    }}

二、CheckBox(复选框)

实例:



代码:

布局文件

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:layout_width="match_parent"    android:layout_height="match_parent">    <TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="水果"/>     <CheckBox    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="苹果"    android:id="@+id/checkbox1"    />    <CheckBox        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="香蕉"        android:id="@+id/checkbox2"        />    <CheckBox        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="梨子"        android:id="@+id/checkbox3"        />    <CheckBox        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="西瓜"        android:id="@+id/checkbox4"        />    <Button        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="确定"        android:onClick="sel"/></LinearLayout>
Java代码

package com.example.myapplication;import android.content.Intent;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.Gravity;import android.view.View;import android.widget.CheckBox;import android.widget.ImageView;import android.widget.LinearLayout;import android.widget.TextView;import android.widget.Toast;/** * Created by Administrator on 2017/6/4 0004. */public class LoginActivity extends AppCompatActivity{    CheckBox checkBox1;    CheckBox checkBox2;    CheckBox checkBox3;    CheckBox checkBox4;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_login);   // 通过id获取多选框        checkBox1= (CheckBox) findViewById(R.id.checkbox1);        checkBox2= (CheckBox) findViewById(R.id.checkbox2);        checkBox3= (CheckBox) findViewById(R.id.checkbox3);        checkBox4= (CheckBox) findViewById(R.id.checkbox4);    }    public void sel(View view){        String str="";        //获取选择的多选框        if(checkBox1.isChecked()){            str+=checkBox1.getText();        }if(checkBox2.isChecked()){            str+=checkBox2.getText();        } if(checkBox3.isChecked()){            str+=checkBox3.getText();        } if(checkBox4.isChecked()){            str+=checkBox4.getText();        }       Toast toast=Toast.makeText(LoginActivity.this,"你选择了"+str,Toast.LENGTH_SHORT);           toast.setGravity(Gravity.TOP,0,220);//设置Toast框位置        //布局文件           LinearLayout linearLayout=new LinearLayout(this);        //设置图片           ImageView imageView=new ImageView(this);           imageView.setImageResource(R.drawable.icon_user);        //文字内容           TextView textView=new TextView(this);           textView.setText(str);           linearLayout.addView(textView);           linearLayout.addView(imageView);           toast.setView(linearLayout);           toast.show();           str="";           Intent intent=new Intent(LoginActivity.this,DataActicity.class);           startActivity(intent);    }}

三、ToggleButton(开关状态按钮)

android:checked 设置开关的状态

实例:


代码:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:layout_width="match_parent"    android:layout_height="match_parent"><ImageView    android:layout_width="300dp"    android:layout_height="300dp"    android:id="@+id/iv_toggle_old"    android:src="@drawable/s1"    android:layout_gravity="center_horizontal"/>    <ToggleButton        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_gravity="center"        android:textOn="关闭"        android:textOff="开启"        /></LinearLayout>



原创粉丝点击