在较旧的应用程序中,我通常会使用onCreateContextMenu()
以下签名进行上下文操作:
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo)
这menuInfo
将为我提供正在构建上下文菜单的列表中的哪个项目的信息。然后我可以有权Uri
找到适合它的操作并将它们创建为菜单项(使用自动意图或其他方式)。
现在,使用更新的 API,替换它的是上下文操作栏,使用ActionMode
:
public boolean onCreateActionMode(ActionMode mode, Menu menu)
public boolean onPrepareActionMode(ActionMode mode, Menu menu)
但是在这里,我如何区分项目和/或获取此位置信息?
对于批处理模式,不存在这样的参数是有意义的,因为您应该只提供适用于任何事物的操作。但是对于单模式,除了按钮现在在操作栏中之外,这不完全等同于旧的 API 吗?
参考:http: //developer.android.com/guide/topics/ui/menus.html#context-menu