2013-03-11 47 views
2

在这段代码中,我在微调控制器中添加了600000到600113的pincode数字,但是我希望第一个位置只是空的。当用户点击时,应该显示该项目。请参阅我的代码 -微调第一项默认设置空值?

final String[] myarray=new String[114]; 

    for(int i=0;i<114;i++) 
    { 

    myarray[i]=String.valueOf(a); 
    a++; 
    } 
    ArrayAdapter<CharSequence> adapter = new ArrayAdapter<CharSequence>(MainActivity.this, 
      android.R.layout.simple_spinner_dropdown_item,myarray); 
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    addnum_spinner.setAdapter(adapter); 
    lv.setOnItemClickListener(itemClickedListener); 

    //Spinner click 

    addnum_spinner.setOnItemSelectedListener(new OnItemSelectedListener() { 
     @Override 
     public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) { 
      // your code here 
      String value = myarray[position]; 

      // 
     } 

     @Override 
     public void onNothingSelected(AdapterView<?> parentView) { 
      // your code here 
     } 

    }); 

回答

0

这个属性在xml添加到您spinner,并尝试是否可行

android:prompt="" 
+2

它不工作.Hari – Gomathi 2013-03-11 12:34:11

+0

我放在android:prompt =“@ string/spinner”value folder我添加“Select First Item”但是我又获得了第一个值600000。 – Gomathi 2013-03-11 12:36:13

+0

尝试将硬编码字符串android:prompt =“Select First Item”替换为android:prompt =“@ string/spinner” – Syn3sthete 2013-03-11 12:38:57

0

我不知道这是正确的做法,但怎么样只是增加了空将for循环之前的字符串作为第一项,然后您只需处理用户单击Listener中的空项目。像

final String[] myarray=new String[115]; 
    myarray[0] = "" 
    for(int i=1;i<115;i++) 
    { 

    myarray[i]=String.valueOf(a); 
    a++; 
    } 
0

我知道这个问题是旧的,但我增加了一个解决方案。我意外发现了这一点,因为我不想要一个空白的默认值,但有一个。

如果使用ArrayAdapter,我发现将适配器连接到一个空的ArrayList,然后填充它留下一个空白的初始值。

首先填充ArrayList,然后附加ArrayAdapter删除空白默认值。

显然,如果不使用ArrayAdapter,使用提示符或将第一个Spinner项目设置为<item></item>而XML中的任何内容都不起作用。