posts - 609,  comments - 13,  views - 64万
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
参考:http://www.dedeyun.com/it/m/98498.html
https://blog.csdn.net/myxiaoq/article/details/25869693
1.key、value类,需要重写toString()方法,返回text就是Spinner要显示的key
复制代码
package com.jay.common;
public class SpinnerData {

    private String value = "";
    private String text = "";

    public SpinnerData() {
        value = "";
        text = "";
    }

    public SpinnerData(String _value, String _text) {
        value = _value;
        text = _text;
    }

    @Override
    public String toString() {
        return text;
    }

    public String getValue() {
        return value;
    }

    public String getText() {
        return text;
    }
}
复制代码

2.设置适配器,默认选中项:spinner.setSelection(1);要放到最后一行。

复制代码
Spinner spinner = (Spinner) findViewById(R.id.cbo1);
        List<SpinnerData> lst = new ArrayList<SpinnerData>();
        for (int i = 0; i < 3; i++) {
            SpinnerData c = new SpinnerData("value"+i, "text" + i);
            lst.add(c);
        }
        ArrayAdapter<SpinnerData> Adapter = new ArrayAdapter<SpinnerData>(this,android.R.layout.simple_spinner_item, lst);
        Adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        spinner.setAdapter(Adapter);
复制代码

3.获取当前选中项:((SpinnerData)spinner.getSelectedItem()).getValue();
4.设置选中事件

复制代码
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
                TextView view1 = (TextView) view;
                String k = view1.getText().toString();
                String v = lst.get(position).getValue();
                Toast.makeText(MainActivity.this, "text:" + k + ",\nvalue:" + v, Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onNothingSelected(AdapterView<?> parent) {

            }
        });
复制代码

 5.可替换自定义列表、选中样式
item_select.xml

复制代码
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="45dp"
    android:background="@android:color/holo_blue_dark"
    android:textSize="14sp"
    android:textColor="@android:color/holo_red_light"
    android:gravity="center"
    />
复制代码

item_dropdown.xml

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="45dp"
    android:textColor="@android:color/black"
    android:textSize="14sp"
    android:gravity="center"/>

 

posted on   邢帅杰  阅读(320)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
历史上的今天:
2019-08-08 扫描输入后自动定位到下一个输入框
点击右上角即可分享
微信分享提示