我正在创建一个带有ListView的简单对话框.我希望能够访问它的上下文菜单.这是我的基本代码:
<On CreateDialog>
listViewSongs=(ListView) layout.findViewById(R.id.ListView_Songs);
listViewSongs.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, drawingPanel.metronome.getSongNames()));
registerForContextMenu(listViewSongs);
Run Code Online (Sandbox Code Playgroud)
然后我只添加一个简单的项目:
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo)
{
super.onCreateContextMenu(menu, v, menuInfo);
menu.setHeaderTitle("Sample Context Menu");
menu.add(0, MENU_EDIT_SONG, 0, "Edit");
}
Run Code Online (Sandbox Code Playgroud)
最后我重写了onContextItemSelected:
@Override
public boolean onContextItemSelected(MenuItem item) {
super.onContextItemSelected(item);
editSong();
return true;
}
Run Code Online (Sandbox Code Playgroud)
所以我的问题是,当我长按listview时,我得到了上下文菜单,但在点击它上面的唯一选项后,它从不调用onContextItemSelected :(任何帮助?
PS:我也试过覆盖onMenuItemSelected,onOptionsItemSelected,但我得到了相同的结果:\永远不会被调用.
| 归档时间: |
|
| 查看次数: |
5410 次 |
| 最近记录: |