Android基础控件二

188 阅读2分钟

1676860520393.jpg 前言:不要担心别人会做得比你好,你只需要每天都做得比前一天好就可以了。成长是一场和自己的比赛。

单选按钮

单选按钮就是只能够选中一个的常见的就是对于性别的选择。 单选按钮的控件是RadioButton但是单选按钮不能单独使用,需要放在RadioGroup按钮组里面嵌套使用,从而实现单选功能!

RadioGroup可以通过设置orientation属性改变布局排列方向。如图:

图一:是设置了RadioGroup属性orientation="horizontal"为水平排列的

image.png

图二:是设置了RadioGroup属性orientation="vertical"为向垂直排列的

image.png

<RadioGroup
    android:padding="10dp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:background="#58ECAB">
    <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>

通过java代码来控制改变选择的变化。

tutieshi_640x1137_5s.gif

image.png

//通过id名找到相对应的控件
radioGroup = findViewById(R.id.radioGroup);

//监听器,主要监听相对应控件的变化
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
    @Override
    public void onCheckedChanged(RadioGroup radioGroup, int i) {
        RadioButton radbtn = (RadioButton) findViewById(i);
        Toast.makeText(getApplicationContext(), "按钮组值发生改变,你选了" + radbtn.getText(), Toast.LENGTH_SHORT).show();

    }
});

CheckBox:复选按钮

它是单独的存在,不需要喝那个嵌套才能使用,不过为了更方便使用它,一般在外层用 LinearLayout来包裹他,这样可以更方便使用,当然也可以使用其他布局来包裹的。如图1-1、1-2所示

复选按钮也叫复选框。就字面意思即可以同时选中多个选项,也可以取消选择状态。可以反复操作这也正常表明了复字的意思。 他的选择也和单选按钮一样通过java代码来选择和取消选中的状态。

1-1 image.png

1-2

image.png

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:background="#E8C356">
    <CheckBox
        android:id="@+id/checkbox"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="篮球"/>
    <CheckBox
        android:id="@+id/checkbox2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="足球"/>
    <CheckBox
        android:id="@+id/checkbox3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="乒乓球"/>
    <CheckBox
        android:id="@+id/checkbox4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="羽毛球"/>
</LinearLayout>

image.png

image.png

可以通过设置来改变复选框的按钮颜色和样式,单选框同样有用

//设置颜色根据自己要求和项目要求自行选择
android:buttonTint="@color/purple_700"
//这是设置方形的框框
style="@style/Widget.AppCompat.CompoundButton.CheckBox"
//这是设置圆形的框
style="@style/Widget.AppCompat.CompoundButton.RadioButton"

image.png

路虽远,行则将至;事虽难,做则必成。