Java onCreateContextMenu
我明白我在这里做错了什么Java onCreateContextMenu,java,android,Java,Android,我明白我在这里做错了什么 public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo)menuInfo; Map&l
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo)menuInfo;
Map<String, String> data = (Map<String, String>) getListView().getItemAtPosition(info.position);
preferences = PreferenceManager.getDefaultSharedPreferences(this);
String admin = preferences.getString("Admin", null);
String user_ids = preferences.getString("userID", null);
menu.setHeaderTitle("Options");
menu.add(0, profile, 0, "Show Profile");
if (admin.equals("Admin")){
menu.add(0, add, 0, "Add Friend");
menu.add(0, pm, 0, "Send PM");
menu.add(0, warn, 0, "Send Warning");
menu.add(0, edit, 0, "Edit Post");
menu.add(0, delete, 0, "Delete Post");
menu.add(0, block, 0, "Block User");
}else if (data.get("pid").equals(user_ids)){
menu.add(0, edit, 0, "Edit Post");
}else{
menu.add(0, add, 0, "Add Friend");
menu.add(0, pm, 0, "Send PM");
menu.add(0, warn, 0, "Send Warning");
menu.add(0, block, 0, "Block User");
}
}
但是如果我把if-ELSE语句注释掉,它就行了。困惑。可能是你写的
返回super.onContextItemSelecteditem
在最后一个if-else条件结束时。
你可以看到更多这些链接,并且这仅适用于我尝试创建的选定对象。发生此错误时,logcat中会打印什么?对不起,出于某种原因或其他原因,它正在工作。
view.showContextMenu();