WEB开发网
开发学院手机开发Android 开发 Android学习之menu 阅读

Android学习之menu

 2010-05-31 14:13:00 来源:WEB开发网   
核心提示:.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { Toast.makeText(HelloDemo.this, &q
.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { Toast.makeText(HelloDemo.this, "Sub Menu Item selected", Toast.LENGTH_SHORT).show(); return true; //true表示完成当前item的click处理,不再传递到父类处理 } }); menu.add("Item 3").setCheckable(true).setChecked(true); }

在编写过程中,发现groupId的影响很大,不推荐使用Menu.add(int titleRes)和add(CharSequence title)方法来添加MenuItem,因为没有指定groupID,默认为0,这样子和后面的menu group 一组了,导致执行完menu.setGroupCheckable(groupId, true

,

true

)后同一group的Item都变成radio。

OptionsMenu的Java实现

view plaincopy to clipboardprint?

1. @Override

2. public boolean onCreateOptionsMenu(Menu menu) {

3. // Group ID

4. int groupId = 0;

5. // The order position of the item

6. int menuItemOrder = Menu.NONE;

7.

8. menu.add(groupId, MENU_COPY, menuItemOrder, "Copy")

9. .setIcon(R.drawable.icon);

10. menu.add(groupId, MENU_EDIT, menuItemOrder, "Edit");

11. menu.add(groupId, MENU_PASTE, menuItemOrder, "Paste");

12. menu.add(groupId, MENU_DELETE, menuItemOrder, "Delete");

13. menu.add(groupId, MENU_OK, menuItemOrder, "Ok");

14. menu.add(groupId, MENU_CANCEL, menuItemOrder, "Cancel");

15. menu.add(groupId, MENU_TEST, menuItemOrder, "Test");

16. menu.add(groupId, MENU_DEMO, menuItemOrder, "Demo");

17. // .setIcon(R.drawable.icon); more expand menu 不支持icon, setIcon不会报错,但运行时还是看不到icon的

18.

19. //return super.onCreateOptionsMenu(menu);

20. return true; //true表示要显示menu; false表示不显示menu

21. }

@Override public boolean onCreateOptionsMenu(Menu menu) { // Group ID int groupId = 0; // The order position of the item int menuItemOrder = Menu.NONE;

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Android 学习 menu

编辑录入:coldstar [复制链接] [打 印]
赞助商链接