2013-01-22 44 views
0

我不想顯示微調框下拉,如果它是空的。我試過,但我沒有得到請任何人都可以幫助我。android - 不想顯示微調框下拉如果它是空的

代碼:

sp.setOnTouchListener(new OnTouchListener() { 

    @Override 
    public boolean onTouch(View arg0, MotionEvent event) { 
     // TODO Auto-generated method stub 
     //narray is the array. It's having the elements of spinner. 
     if (event.getAction() == MotionEvent.ACTION_UP && narray.size() == 0) { 
      sp.setPressed(false); 
      sp.setSelected(false); 
      sp.setAdapter(null); 
     } 
     return false; 
    }  
}); 

回答

3

在代碼中添加此檢查數組大小< = 0

String[] b = {}; 

    spin = (Spinner) findViewById(R.id.spinner1); 

      if (b.length <= 0) { 
       spin.setClickable(false); 
      } 

試試這個代碼微調不開。

編輯:

做類似下面

spin = (Spinner) findViewById(R.id.spinner1); 

    spin.setOnTouchListener(new OnTouchListener() { 

    @Override 
    public boolean onTouch(View v, MotionEvent event) { 
     // TODO Auto-generated method stub 
     if (b.length <= 0) { 
      spin.setClickable(false); 
      Toast.makeText(StackoneActivity.this, 
        "spinner have no items", Toast.LENGTH_LONG).show(); 
     } 
     return false; 
    } 
}); 
+0

但在這裏我想顯示一些消息,如果我們點擊微調。 – naresh

+0

檢查我編輯過的答案..還有一件事請在解釋之前解釋你的所有要求。 –

+0

我想顯示的消息,即使微調沒有元素也 – naresh

0

試試這個代碼。

if(narray.size() >= 0) 
sp.setOnTouchListener(new OnTouchListener() { 

@Override 
public boolean onTouch(View arg0, MotionEvent event) { 
    // TODO Auto-generated method stub 
    if (event.getAction() == MotionEvent.ACTION_UP) { 
     sp.setPressed(false); 
     sp.setSelected(false); 
     sp.setAdapter(null); 
    } 
    return false; 
}  
});