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

一、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>



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值