首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

新手求教ListView的有关问题

2013-02-19 
新手求教ListView的问题请问各位大神,怎么在contextmenu中获取listview的item索引啊?(触摸屏长按)悲催的我

新手求教ListView的问题
请问各位大神,怎么在contextmenu中获取listview的item索引啊?(触摸屏长按)悲催的我只能用setItemOnLongClick加AlertDialog.Builder实现了……求各位大神帮忙解答!!
[解决办法]


// 上下文菜单
LV_MyList.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) 
{
AdapterContextMenuInfo acm = (AdapterContextMenuInfo)menuInfo;
SelectedIndex = acm.position - 1;  //这里就可以得到listview的item索引
}
}

[解决办法]
完整的


// 上下文菜单
LV_MyList.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) 
{
AdapterContextMenuInfo acm = (AdapterContextMenuInfo)menuInfo;
SelectedIndex = acm.position - 1;
ListItem item = list_GroupItem.get(SelectedIndex);
if(item.mType == 0)
{
GroupInfo sg = (GroupInfo)list_GroupItem.get(SelectedIndex).mMap.get(-1);
menu.setHeaderIcon(android.R.drawable.ic_dialog_alert);
menu.setHeaderTitle("Title");
menu.add(0, Menu.FIRST + 2, 2, R.string.str_MarkasRead);
menu.add(0, Menu.FIRST + 3, 3, R.string.str_MarkasUnread);
menu.add(0, Menu.FIRST + 4, 4, R.string.str_GroupReset);
menu.add(0, Menu.FIRST + 5, 5, R.string.str_Delete);
}
}
});

 
/**
 * 上下文菜单处理
 */
@Override
public boolean onContextItemSelected(MenuItem item) {
// TODO Auto-generated method stub
GroupInfo sg = (GroupInfo)list_GroupItem.get(SelectedIndex).mMap.get(-1);

switch (item.getItemId()) {
case Menu.FIRST + 2:
break;
case Menu.FIRST + 3:
break;
case Menu.FIRST + 4:
break;
case Menu.FIRST + 5:
break;
}

mAdapter_ListGroup.notifyDataSetChanged();
return super.onContextItemSelected(item);
}

热点排行