Tùy thuộc vào những gì bạn muốn nhận ra bạn có thể sử dụng phương pháp đưa ra cho menues bối cảnh:
Đầu tiên đăng ký lớp View mà được lâu ép (bên trong lớp Fragment của bạn):
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
registerForContextMenu(this.getListView());
}
Hơn cả việc triển khai hai phương thức này, để tạo menu ngữ cảnh và thực hiện những gì bạn muốn khi một mục menu được nhấp:
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
MenuInflater inflater = this.getActivity().getMenuInflater();
inflater.inflate(R.menu.my_context_menu, menu);
}
@Override
public boolean onContextItemSelected(MenuItem item) {
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
switch (item.getItemId()) {
case R.id.add: // <-- your custom menu item id here
// do something here
return true;
default:
return super.onContextItemSelected(item);
}
}
Nguồn
2013-01-25 19:49:03
Tôi đã tìm ra cách: getListView setOnItemLongClickListener(). (OnItemLongClickListener mới() { \t \t \t @ Override \t \t \t public boolean onItemLongClick (AdapterView > paramAdapterView, \t \t \t Xem paramView, vị trí int, long paramLong) {// TODO trả về true; } }); – tsync