在上下文菜单标题上显示所选项目

时间:2011-03-03 05:57:54

标签: android contextmenu

我创建了一个Android应用程序,其活动的ListView列出了所有播放列表。

我添加了ContextMenu,因此长按会显示多个选项,例如“删除”,“播放”等。

ContextMenu处理程序中,如何提取信息以了解单击上下文菜单的播放列表。

这里我想在上下文菜单标题上显示所选的播放列表名称。

public void onCreateContextMenu(ContextMenu menu,
                                 View v,
                                 ContextMenuInfo menuInfo)  
{

     super.onCreateContextMenu(menu, v, menuInfo);
     menu.setHeaderTitle("Selected Playlist Name");      
     menu.add(0, v.getId(), 0, "Play");     
     menu.add(0, v.getId(), 1, "Delete"); 
}

1 个答案:

答案 0 :(得分:2)

这是如何获取ListView中所选项目中的文本。您将AdapterContextMenuInfo投射到menuInfo类型后,可以阅读AdapterContextMenuInfo中的信息,然后从属性targetView中读取值<)

public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo)
{
   super.onCreateContextMenu(menu, v, menuInfo);
   AdapterContextMenuInfo info = (AdapterContextMenuInfo) menuInfo;
   String name = ((TextView) info.targetView).getText().toString();
   menu.setHeaderTitle(name);      
   menu.add(0,v.getId(), 0, "Play");    
   menu.add(0,v.getId(), 1, "Delete"); 
}