美文网首页android 技术知识
android中Spinner的简单使用

android中Spinner的简单使用

作者: 追梦小乐 | 来源:发表于2018-06-21 14:52 被阅读2次

1、设置Spinner的布局

        <android.support.v7.widget.AppCompatSpinner
            android:id="@+id/sp"
            android:layout_alignTop="@+id/tv_sys_code"
            android:layout_toEndOf="@+id/tv_sys_code"
            android:spinnerMode="dropdown"
            android:prompt="@string/spinner_list_tip"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
             />

注意设置android:spinnerMode的模式

2、Spinner在代码中的使用

    /**
     * 初始化Spinner
     * @param codeNames
     */
    private void initSpinner(final List<String> codeNames) {
        //使用android提供的Item布局
//        final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, codeNames);
//        //这里设置的是Spinner的样式
//        adapter.setDropDownViewResource(android.R.layout.simple_spinner_item);

        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.layout_spinner_item_select, codeNames);
        //传入的参数分别为 Context , 未选中项的textview , 数据源List
        //单独设置下拉的textview
        adapter.setDropDownViewResource(R.layout.layout_spinner_item_drop);
        //设置Adapter
        spinner.setAdapter(adapter);
        spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
                //选择列表项的操作
                sysCode = codeNames.get(position);
            }

            @Override
            public void onNothingSelected(AdapterView<?> parent) {
                //未选中时候的操作
            }
        });
    }

3、获取当前值的方法

spinner.getSelectedItem().toString();

4、效果如下所示

image.png

相关文章

网友评论

    本文标题:android中Spinner的简单使用

    本文链接:https://www.haomeiwen.com/subject/gzgqyftx.html