必要に応じて、registerForContextMenu、onCreateViewまたはonCreateを呼び出します。
registerForContextMenu(getListView());
以下に示すように、アダプタに実装します。
public class CustomeLabelAdpater extends BaseAdapter implements View.OnCreateContextMenuListener{
この行をgetViewメソッドに入れます。
vi.setOnCreateContextMenuListener(this);
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
View vi = convertView;
vi.setOnCreateContextMenuListener(this);
}
このメソッドをアダプターにブランクとして入れてください。
public void onCreateContextMenu(ContextMenu contextMenu, View view, ContextMenu.ContextMenuInfo contextMenuInfo) {
// empty implementation
}
次に、フラグメントまたはアクティビティでonCreateContextMenuとonContextItemSelectedをオーバーライドします。
@Override
public void onCreateContextMenu(ContextMenu contextMenu, View view,
ContextMenu.ContextMenuInfo contextMenuInfo) {
// create context the menu
Activity.getMenuInflater().inflate(R.menu.context_menu, contextMenu);
}
@Override
public boolean onContextItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.open:
return true;
default:
return super.onContextItemSelected(item);
}
}