質問: toast.maketext(this, res, toast.length_short); toast.show(); return true; }
回答: 最初に、リストビューでコンテキストメニューを登録する必要があります。lv = (listview) findviewbyid(r.id.list_view); registerforcontextmenu(lv); 次に、アクティビティメソッドをオーバーライドします。/** * menu */ @override public void oncreatecontextmenu(contextmenu menu, view v, contextmenuinfo menuinfo) { super.oncreatecontextmenu(menu, v, menuinfo); if (v.getid()==r.id.list_view) { menuinflater inflater = getmenuinflater(); inflater.inflate(r.menu.menu_list, menu); } } @override public boolean oncontextitemselected(menuitem item) { adaptercontextmenuinfo info = (adaptercontextmenuinfo) item.getmenuinfo(); switch(item.getitemid()) { case r.id.add: // add stuff here return true; case r.id.edit: // edit stuff here return true; case r.id.delete: // remove stuff here return true; default: return super.oncontextitemselected(item); } } menu_list.xmlファイルの例を次に示します(res/menuフォルダーにファイルを配置する必要があります)。<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/add" android:icon="@android:drawable/ic_menu_add" android:title="@string/menu_add" /> <item android:id="@+id/edit" android:icon="@android:drawable/ic_menu_edit" android:title="@string/menu_edit" /> <item android:id="@+id/delete" android:icon="@android:drawable/my_icon_delete" android:title="@string/menu_delete" /> </menu> それが役立つことを願っています。