5

这个语句会返回什么?

parent.getItemAtPosition(position)

微调器的父视图在哪里parent,位置是微调器视图中的选定位置。

4

2 回答 2

5

我假设您正在谈论的“父母”是 Spinner。在这种情况下:

Spinner.getItemAtPosition(pos); 

将始终返回您填充 Spinner 的对象类型

使用 CustomType 的示例:(Spinner 填充了“CustomType”类型的项目,因此 getItemAtPosition(...) 将返回 CustomType)

Spinner spinner = (Spinner) findViewById(R.id.spinner1);
CustomType [] customArray = new CustomType[] { .... your custom items here .... };

// fill an arrayadapter and set it to the spinner
ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_spinner_item, customArray);

spinner.setAdapter(adapter);  

CustomType type = (CustomType) spinner.getItemAtPosition(0); // it will return your CustomType so you can safely cast to it

另一个使用字符串数组的示例:(微调器填充了“字符串”类型的项目,因此 getItemAtPosition(...) 将返回字符串)

Spinner spinner = (Spinner) findViewById(R.id.spinner1);
String[] stringArray= new String[] { "A", "B", "C" };

// fill an arrayadapter and set it to the spinner
ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_spinner_item, stringArray);

spinner.setAdapter(adapter);  

String item = (String ) spinner.getItemAtPosition(0); // it will return your String so you can safely cast to it
于 2013-08-17T11:38:35.283 回答
1

它将返回dataType您在微调器中显示的对象。

假设您正在显示字符串数组,那么它将返回字符串。

如果您正在显示 Integer 数组,那么它将返回 Integer 等等。

于 2013-08-17T11:36:36.930 回答