在android中我可以让一个Spinner包含一些类别和一些子项目。
例如,我说选择一个国家/地区,然后会显示特定城市供选择。
请帮帮我
答案 0 :(得分:2)
如果您有两个微调器,则可以在另一个微调器中进行选择时填充一个。 OnItemSelectedListener可以用于此目的。类似下面的内容可能有用,虽然我还没有测试过,所以它可能包含错误。即使它有效,也不是所有事情都可能以最好的方式完成。
final HashMap<String, ArrayList<String>> optionsForCategories;
final Spinner categorySpinner;
final spinner individualSpinner;
final ArrayAdapter<String> individualSpinnerAdapter;
...
categorySpinner.setOnItemSelectedListener(new OnItemSelectedListener {
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
String selectedCategory = parent.getItemAtPosition(position);
individualSpinnerAdapter.clear();
individualSpinnerAdapter.addAll(optionsForCategories.get(selectedCategory);
}
public void onNothingSelected(AdapterView<?> parent) { }
});
这将是非常自然的,预计会有两个微调器。但是,如果你真的只想要一个(不清楚,但似乎暗示在你的问题中),那么你可以从微调器的OnItemSelectedListener中显示一个对话框。