2012-07-24 79 views
0

我有以下代码:安卓微调第一元素列表

spin.setAdapter(new ArrayAdapter<String>(Activity.this, 
            android.R.layout.simple_spinner_item,result)); 
spin.setOnItemSelectedListener(new OnItemSelectedListener() { 
String selected; 
boolean click=false; 
int currSelection =spin.getLastVisiblePosition(); 
public void onItemSelected(
AdapterView<?> parentView,View selectedItemView, int position,long id) 
{ 
    if ((position != 0)){ 
    //code here 
    } 
} 

当从列表,我不能提取值的第一要素上点击。 list elements的其余部分按预期工作。

我知道问题在于int值的位置。问题是,如果我没有,如果条件,然后每个类型我开始列表第一个元素弹出,即使我没有点击列表中的任何项目。如何解决这个问题?

+1

因此,如果没有选择项目,它将返回0的默认行为,这意味着第一个项目被选中(第0个位置)。你现在想要什么? – AAnkit 2012-07-24 09:44:58

+0

我想单击它时打印列表元素。 – 2012-07-24 10:08:33

回答

0

既然你想打印列表元素后,点击它会很难与微调由于Android默认情况下选择第一个元素在第0位置微调,这将打印元件,而不选择。

对于我可以建议你使用警告对话框,而不是spinner.Use按钮而不是微调和按钮的onClick()创建警报对话框。该下面的例子中给出。

创建您的微调项目的字符串数组。

String[] element = {Your element List}; 
private OnClickListener btn_Listener = new OnClickListener() { 

    public void onClick(View arg0) { 
     // TODO Auto-generated method stub 
     AlertDialog.Builder builder = new AlertDialog.Builder(getContext()); 
     builder.setTitle("Set your Button Name"); 

      builder.setSingleChoiceItems(itemsForHindi, -1, 
        new DialogInterface.OnClickListener() { 
         public void onClick(DialogInterface dialog, int item) {        
          alertDialog.dismiss(); 
          selectedParam = element[item].toString(); // Here you can get selected ielement.         
         } 
        }); 
     }   
     alertDialog = builder.create(); 
     alertDialog.show(); 
    } 
}; 

如果您有任何疑问,请问我。

相关问题