Android控件——Checkbox复选框、RadioButton单选、ToggleButton开关、SeekBar拖动条

原文http://www.javayihao.top/detail/65

Checkbox复选、RadioButton单选、ToggleButton开关、SeekBar拖动条

1.Checkbox复选控件

1个常用属性:默认是否选中

android:checked="true"

3个常用方法:设置选中方法、是否选中方法、选中状态监听方法

<CheckBox
    android:id="@+id/checkbox"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="篮球"
    android:checked="true" />


public class IndexActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        CheckBox checkBox = findViewById(R.id.checkbox);
        checkBox.setChecked(false);//设置选中方法
        final boolean flag=checkBox.isChecked();//是否选中方法
        Log.d("TAG","选中没有"+flag);
//选中状态监听方法
        checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                //业务处理代码
                Log.d("Tag","选中状态"+isChecked);
            }
        });
    }
}

2.RadioButton单选控件(多个选项只能选择一个)

与checkbox相比

通过点击无法变为未选中、一组RadioButton同时只能选中一个、大部分ui框架中都以圆形表示

需要放在RadioGroup中使用

<RadioGroup
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">
    <RadioButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="男"/>
    <RadioButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="女"/>
</RadioGroup>

3.ToggleButton开关

常用属性:

android:textOff=”关”

android:textOn=”开”

android:checked=”true”//状态

<ToggleButton
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textOff="关"
    android:textOn="开"
    android:checked="true"/>

常用方法:基本使用和上面的一样

setChecked(boolean)

setOnCheckedChangeListener()

4.SeekBar拖动条

常用属性

android:max=”100″ //拖动条长度

android:progress=”30″//拖动条起始位置

案例代码:

<SeekBar
    android:id="@+id/seekbar"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:max="100"
    android:progress="30" />

常用方法:

seekBar.setProgress(50);//设置进度

seekBar.getProgress(); //获取进度

seekBar.setOnSeekBarChangeListener()//拖动条监听

案例代码:

public class IndexActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        SeekBar seekBar  =findViewById(R.id.seekbar);
        seekBar.setProgress(50);
        seekBar.getProgress();
        seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
            //实时获取位置
            @Override
            public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
                Log.d("目前","位置"+seekBar.getProgress());
            }

            //拉动开始位置
            @Override
            public void onStartTrackingTouch(SeekBar seekBar) {
                Log.d("start","位置"+seekBar.getProgress());
            }

            @Override
            public void onStopTrackingTouch(SeekBar seekBar) {
                Log.d("end","位置"+seekBar.getProgress());
            }
        });
    }
}

文章首发地址:www.javayihao.top

文章公众号:java一号

点赞