我有一个列表视图,显示一个id名称描述等...我创建了一个上下文菜单,用于该列表,我想通过上下文菜单获取特定行的名称。我该怎么做
ListAdapter adapter = new SimpleAdapter(
AllProductsActivity.this, productsList,
R.layout.list_item, new String[] { TAG_ID,
TAG_NAME, TAG_DATA, TAG_DATA2, TAG_QTD},
new int[] { R.id.id, R.id.descricao, R.id.data, R.id.data2, R.id.qtd});
// updating listview
setListAdapter(adapter);
}
});
}
}
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo){
getMenuInflater().inflate(R.menu.context, menu);
}
public boolean onContextItemSelected(MenuItem item) {
AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
switch(item.getItemId()) {
case R.id.item1:
long id = getListAdapter().getItemId(info.position);
Toast.makeText(getApplicationContext(),String.valueOf(id),
Toast.LENGTH_SHORT).show();
return true;
case R.id.item2:
return true;
default:
return super.onContextItemSelected(item);
}
}
}
答案 0 :(得分:0)
您应该使用自定义列表适配器。
然后你可以使用onItemClickListener获取被点击的项目,因此名称等...
以下是自定义适配器的教程:
答案 1 :(得分:0)
您想注册上下文菜单,例如:registerForContextMenu(yourListView)
。