New Project Wizard 为我们创建了一个名为 menu_main.xml 的菜单。按 Ctrl + Shift + N | Cmd + Shift + 0 ,输入 main ,选择 res/menu/menu_main.xml 并打开它。将 menu main.xml修改为如代码清单10-1所示。
代码清单10-1 修改menu_main.xml文件
android:id="@+id/mnu_codes" android: order InCategory=n 100'* app:showAsAction="never" android:title="search active codes"/>
app:showAsAction属性决定了菜单项的位置。将此属性设置为never,表示此菜单项永 远不会出现在操作栏上,而是总出现在溢出菜单中。溢出菜单由操作栏右侧三个竖直的点来表示。
android:orderInCategory用于设置菜单项的次序。Android中的约定是使用100的倍数,因此举例来说,我们可以使用250在 200和 300之间插入一个新的菜单项,而使用225可以在200和 250之间插入 一 个 新的菜单项。orderInCategory属性必须是整数,因此如果开 始时使用诸如2 和 3 这样的连续值,那么将会没有插入中间值的空间,而我们也不得不重新排序整个集合。
注意,我们为每个菜单项分配了 ID值,因此后面可以在Java代码中引用这些对象。
打 开 MainActivity.xml并按照代码清单10-2所示修改onOptionsItemSelected()方法。
代码清单 10-2 修改 onOptionsltemSelected()方法public boolean onOptionsItemSelected(Menultem item) { int id = item.getltemld(); switch(id){
case R.id.mnu_invert:
//TODO define behavior here break;
case R.id.mnu_codes:
//TODO define behavior here break;
case R.id.mnu_exit: finish(); break;
}
return true;
}
注意,除了 Exit菜单项以外,我们在实现代码的位置均放置了 TODO。在接下来的步骤中,我们将会实现其余的菜单项功能。按 Ctrl + K|Cmd + K 并提交,附带消息为Creates options menu。