2010-10-27 51 views
7

我有一個動態管理的arrayadapter微調。當它顯示時,微調器文本也顯示單選按鈕。我如何擺脫這個單選按鈕?下拉箭頭全部被拉扯並且很糟糕......那是我的問題。 注意:我不是在談論當我選擇微調器上的下拉菜單時顯示的列表中出現的單選按鈕。爲什麼我的android微調器在textview中顯示單選按鈕?

這裏有相應的代碼片段...幾點:

  • 這個代碼是在小部件的構造是微調的一個子類
  • 值對象實例的陣列(通過當小部件被創建)
  • 沒有XML資源;所有的小部件都是動態創建的
  • 以爲我需要「操作」提示符,我在構造函數中添加了setPrompt(...),並且在onitemclicked事件監聽器中......這沒有任何效果。

問:我錯過了什麼?在我看來,我錯過了微調器的一些屬性,導致單選按鈕也顯示在微調器的文本部分。

- 喀嚓碼 -

public class ChoiceGroupImpl extends Spinner implements OnItemSelectedListener { 
    public ChoiceGroupImpl(Activity activity, WidgetContainer container, Value widget, AttributeImpl attributes, Object[] value, int selected) { 
... 
     adapter = new ArrayAdapter<CharSequence>(activity, R.layout.simple_spinner_dropdown_item); 
     adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 

     for (int i = 0; i < value.length; i++) 
      adapter.add(value[i].toString()); 
     if (attributes.isReadonly()) 
      setEnabled(false); 
     setAdapter(adapter); 
     setSelection(selected); 
     setPrompt(adapter.getItem(selected)); 
     setOnItemSelectedListener(this); 
... 
} 
    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
     setPrompt(adapter.getItem(position)); 
     ((ToolkitImpl) Toolkit.getInstance()).hiddenCommand(container, "SelectionChanged"); 
    } 
... 

- 結束剪斷碼 -

+0

哦!順便說一句:我不覆蓋任何視圖佈局,繪製方法。 – 2010-10-27 20:08:00

回答

15

使用simple_spinner_item代替simple_spinner_dropdown_item同時創造您的適配器

adapter = new ArrayAdapter<CharSequence>(activity, R.layout.simple_spinner_item); 
+1

啊!做到了!似乎很簡單,難怪我錯過了! THX – 2010-10-27 21:18:49

+2

好吧然後..接受答案。 – franklins 2010-10-27 23:38:52

+0

thanx fab很好的答案... – 2011-06-22 08:28:23

18

如果你想保持無線電微調器中的按鈕,但不是在textview然後執行此操作:

adapter = new ArrayAdapter<CharSequence>(activity, android.R.layout.simple_spinner_item); 
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
+1

這是一個更完整的解決方案,IMO。 – Ken 2012-01-25 02:42:12

+0

大概做了這個答案我的一些想法。很好的答案。 – John 2012-05-08 01:42:15

+0

此解決方案的問題是在onClick突出顯示期間可以看到複選框 – 2012-12-11 10:43:26

相關問題