Android spinner 使用一些动态值设置Android Spinner的初始值

Android spinner 使用一些动态值设置Android Spinner的初始值,android-spinner,Android Spinner,我想将微调器的动态值设置为其初始值 如果我设置了那个动态值,它不允许我更改为另一个值 spinner的动态值为“AMEX”,如果我想将数组值中的值更改为“Discover”,我不能 所以请给我一个解决方案,这是我的代码 spin_type = (Spinner) findViewById(R.id.Spinner_type); adapter_type = new ArrayAdapter(Credit_Card_Main.this,android.R.la

我想将微调器的动态值设置为其初始值

如果我设置了那个动态值,它不允许我更改为另一个值

spinner的动态值为“AMEX”,如果我想将数组值中的值更改为“Discover”,我不能

所以请给我一个解决方案,这是我的代码

spin_type = (Spinner) findViewById(R.id.Spinner_type);
                   adapter_type = new ArrayAdapter(Credit_Card_Main.this,android.R.layout.simple_spinner_item, array_type);
                   adapter_type.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                   spin_type.setAdapter(adapter_type);




spin_type.setOnItemSelectedListener(new OnItemSelectedListener(){
public void onItemSelected(AdapterView<?> arg0, View arg1,
            int arg2, long arg3) {
                        spin_type.setSelection(adapter_type.getPosition(Signin.VALUE_type[selected_position]));

@Override
    public void onNothingSelected(AdapterView<?> arg0) {
        }
    });
spin_type=(微调器)findViewById(R.id.Spinner_type);
adapter\u type=new ArrayAdapter(信用卡\u Main.this,android.R.layout.simple\u微调器\u项,数组\u type);
adapter\u type.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
旋转类型。设置适配器(适配器类型);
自旋类型。setOnItemSelectedListener(新的OnItemSelectedListener(){
已选择公共视图(AdapterView arg0、视图arg1、,
整数arg2,长arg3){
旋转类型.setSelection(适配器类型.getPosition(符号值类型[所选位置]);
@凌驾
未选择公共无效(AdapterView arg0){
}
});
谢谢


Venkatesh

您可以通过spinner.setPrompt()方法设置微调器的初始值。因此,只需通过该方法设置您的动态值即可{
    spin_type.setOnItemSelectedListener(new OnItemSelectedListener() {

        @Override
        public void onItemSelected(AdapterView<?> arg0, View arg1,
                int arg2, long arg3) {
            // TODO Auto-generated method stub
            for (int i = 0; i < array_type.length; i++) {
                if (test_flag_type == false) {
                    if (array_type[i].toString().equalsIgnoreCase(Credit_Card_List.VALUE_type[Credit_Card_List.selectCard])) {
                        spin_type.setSelection(adapter_type.getPosition(Credit_Card_List.VALUE_type[Credit_Card_List.selectCard]));
                        test_flag_type = true;
                    }
                }
            }
        }

        @Override
        public void onNothingSelected(AdapterView<?> arg0) {
            // TODO Auto-generated method stub
        }
    });
@凌驾 已选择公共视图(AdapterView arg0、视图arg1、, 整数arg2,长arg3){ //TODO自动生成的方法存根 for(int i=0;i 其中数组类型包含信用卡名称列表

我得到数组中的第一个值,这里I=0,将其转换为字符串,然后将其与我从数据库中得到的值(即value\u type)进行比较

如果相同,它将进入If循环,并在“i”位置设置值

如果设置了一次值,我会将test_flag_tyype更改为true,这样下次它就不会进入循环,因为test_flag_tyype为true


这是我使其工作的方式。

提示与初始值不同。