如何创建一个没有元素的空旋转器并稍后添加?
ArrayAdapter<String> aSpin = ArrayAdapter.createFromResource(this, null , null);
不起作用。
答案 0 :(得分:3)
我很好奇,在哪种情况下你想要一个空的微调器?
无论如何,带有null对象的微调器会给你一个恼人的异常。如果你真的想要一个微调器“空”,我会建议你创建一个带有假对象的普通微调器。该对象将是一个像“”的字符串。所以,它不会是空的,但它看起来就像是。
- 编辑 - 为了使用带有对象的微调器,您需要一个适配器。所以,首先,如果你想要一个空的微调器,只需从你的布局中找到它的视图即可。你将有一个空的微调器:
mSpinner = (Spinner)findViewById(R.mLayout.mSpinnerID);
然后,当您需要将项目添加到微调器时,创建包含这些项目的数组,然后将它们添加到适配器,并将适配器添加到微调器。例如,假设您将拥有字符串:
ArrayList<String> mList = new ArrayList<String>();
mList.add("item 1");
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, mList);
mList.setAdapter(adapter);
答案 1 :(得分:1)
Adapter
与Spinner
不同。如果要创建空Spinner
,只需在布局文件中定义一个或以编程方式创建一个。如果您未在Adapter
上设置Spinner
(或在xml声明中指定静态entries
),则不会包含任何项目。
您可能需要查看Spinner tutorial。