一起Talk Android吧(第四百四十一回:UI控件之下拉列表:Spinner一)


各位看官们大家好,上一回中咱们说的例子是"如何给RecyclerView添加分隔线",这一回中说的例子是" UI控件之下拉表:Spinner"。闲话休提,言归正转,让我们一起Talk Android吧!

看官们,最近有看官提问关于下拉列表(Spinner)的问题,我们准备给大家做一个全面的介绍。

使用方法

下拉列表的使用方法和ListView或者RecyclerView这两个UI控件的使用方法类似,如果大家掌握了这两个UI控件的用法,那么掌握下拉列表的用法就会容易一些。没有掌握这两个UI控件用法的看官可以查看我以前的博客。下面是下拉列表的使用方法:

  • 1.在布局中添加Spinner控件,并且设置长度、宽度等属性;
  • 2.在代码中绑定控件(ViewBinding);
  • 3.给Spinner设定适配器(adapter)和监听器;

到此为止,就可以使用下拉列表控件了,不过上面的操作步骤都是文字描述,感觉很抽象,接下来我们将通过具体的代码来演示:

示例代码

明白下拉列表的使用方法后,我们通过代码来演示它的具体使用方法,详细如下:

<!-- 1.在布局中添加Spinner控件,并且设置长度、宽度等属性; -->
<Spinner
    android:id="@+id/id_spinner"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>

下面的代码中使用ViewBinding来绑定下拉列表,代码中的ActivitySpinner是下拉列表所在Activity的名称

// 2.在代码中绑定控件(ViewBinding);
private void initView() {
    mBinding = ActivitySpinner.inflate(getLayoutInflater());
    mView = mBinding.getRoot();
    setContentView(mView);

    mSpinner = mBinding.idSpinner;
}

给Spinner设定适配器(adapter)和监听器,更加详细的内容可以参考代码中的注释;

    private void initSpinner() {
        //这些值是下拉表中显示的的数值,可以依据项目需要自己去定义
        contenArray.add("1");
        contenArray.add("2");
        contenArray.add("3");

        //创建适配器对象并且和spinner进行绑定,适配器的内容稍后介绍
        mSpinnerAdapter = new CustomSpinnerAdapter(this,contenArray);
        mSpinner.setAdapter(mSpinnerAdapter);

        //设置下拉列表的初始值,这里将其设置为列表中的第二个选项
        mSpinner.setSelection(1);

        //给Spinner设定监听器,用来获取下拉列表中被用户选择的某个选项
        mSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> view, View view1, int i, long l) {
                //两种获取被选择项目内容的方法
//                String time = ((TextView)view.findViewById(R.id.item_value)).getText().toString();
                String time = view.getSelectedItem().toString();
            }

            @Override
            public void onNothingSelected(AdapterView<?> view) {
            }
        });
    }

内容总结

我们在本章回中介绍了Spinner的使用方法,并且给出了对应的示例代码,希望大家动手去实践一下,这样有助于大家理解文章中的内容。不过这些代码中还有一个适配器类没有介绍,它的内容比较多,我们将其单独拿出来放在后面的章回中介绍。

看官们,关于"UI控件之下拉列表:Spinner"的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

talk_8

真诚赞赏,手有余香

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值