我的应用程序有一个主菜单,我使用ListView来表示它。由于这是一个菜单,我将根据用户点击的项目实施操作。
我目前的实现如下:
itemList = getResources().getStringArray(R.array.main_menu_array);
(itemList是静态String[]
)listView.setAdapter(new ArrayAdapter<String>(this, R.layout.main_menu_item, itemList));
(R.layout.main_menu_item
指定每个菜单项的布局。它基本上只是一个带有几个属性的TextView。)OnItemClickListener
。 匿名OnItemClickListener类实现onItemClick(),就像这样
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
switch (position) {
case POS_ITEM_A:
... break;
case POS_ITEM_B:
... break;
}
}
POS_ITEM_A
和POS_ITEM_B
final static
变量分别设置为0和1。
我认为这不是好的代码。我该如何解决?
答案 0 :(得分:1)
你可以用微调器完成,但代码几乎相同。
另一个更简单但更不易扩展的替代方法是使用AlertDialog.Buidler并使用setMultipleChoices method。或者general documentation page。
但是列表视图并不是那么糟糕。对于一个小功能,我建议使用对话框构建器来操作应用程序的主要对象,使用列表视图或微调器。