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();