使用spinner进行选择以及数据的获取

使用spinner进行选择以及数据的获取,第1张

效果图如下

编写步骤如下:
1、先编写界面布局的xml文件

 <LinearLayout
                android:id="@+id/role"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:layout_marginStart="32dp">
                <TextView
                    android:id="@+id/tv_role"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="16dp"
                    android:text="@string/role"
                    />
                <Spinner
                    android:id="@+id/spinner_role"
                    android:layout_width="match_parent"
                    android:layout_height="50dp"
                    android:spinnerMode="dropdown"
                    android:layout_marginTop="16dp"
                    android:layout_marginRight="90dp"
                    android:autofillHints="请选择您的角色"
                    />
                <View
                    android:layout_width="match_parent"
                    android:layout_height="1dp"
                    android:layout_marginRight="90dp"
                    android:background="#3E3535" />

            </LinearLayout>

2、编写spinner可选择数据的数据,在Strings.xml文件中添加一下代码

<string-array name="role_list">
        <item>请选择您的角色</item>
        <item>老师</item>
        <item>学生</item>
    </string-array>

3、因为我这时直接在activity中锁需要获得的,则在activity的onCreate()中添加以下代码,我这里是使用了ActivityRegisterBinding来获得控件,还可以用 findViewById()来绑定控件,看个人喜好

     //为老师,学生的角色添加设置
        role_adapter = ArrayAdapter.createFromResource(this, R.array.role_list,android.R.layout.simple_spinner_item);
        //     role_adapter = ArrayAdapter.createFromResource(this,R.array.role_list,R.layout.my_text_view);
        role_adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        registerBinding.spinnerRole.setAdapter(role_adapter);
        registerBinding.spinnerRole.setSelection(0);

        //在spinner选择后编写相关的活动
        registerBinding.spinnerRole.setOnItemSelectedListener(new Spinner.OnItemSelectedListener(){
            @Override
            public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
                //动作选择后在spinner上显示所选择的角色
                registerBinding.spinnerRole.setSelection(i);
                //获取选择的数据,可设置成员变量,在其他方法中使用
                selectedRole = RegisterActivity.this.getResources().getStringArray(R.array.role_list)[i];
            @Override
             public void onNothingSelected(AdapterView<?> adapterView) {
                //默认显示选择栏的第一个角色
                registerBinding.spinnerRole.setSelection(0);
            }
        });

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/993019.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存