定制动作项和应用程序图标

作者:追风剑情 发布于:2015-7-26 11:37 分类:Android

  1. package com.example.androidtest;
  2.  
  3. import android.app.ActionBar;
  4. import android.app.Activity;
  5. import android.content.Intent;
  6. import android.os.Bundle;
  7. import android.view.Menu;
  8. import android.view.MenuItem;
  9. import android.widget.Toast;
  10.  
  11. public class MyActionBarActivity extends Activity {
  12.  
  13. @Override
  14. protected void onCreate(Bundle savedInstanceState) {
  15. super.onCreate(savedInstanceState);
  16. setContentView(R.layout.activity_my_action_bar);
  17. ActionBar actionBar = getActionBar();
  18. //使应用程序图标可点击
  19. actionBar.setDisplayHomeAsUpEnabled(true);
  20. }
  21. @Override
  22. public boolean onCreateOptionsMenu(Menu menu) {
  23. super.onCreateOptionsMenu(menu);
  24. CreateMenu(menu);
  25. return true;
  26. }
  27. @Override
  28. public boolean onOptionsItemSelected(MenuItem item){
  29. return MenuChoice(item);
  30. }
  31. private void CreateMenu(Menu menu){
  32. MenuItem menu1 = menu.add(0, 0, 0, "Item 1");
  33. {
  34. menu1.setIcon(R.drawable.ic_launcher);
  35. //SHOW_AS_ACTION_IF_ROOM: 如果Action Bar上有空间,则将该菜单项显示为一个动作项显示。
  36. //SHOW_AS_ACTION_WITH_TEXT: 显示文本。
  37. menu1.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
  38. }
  39. MenuItem menu2 = menu.add(0, 1, 1, "Item 2");
  40. {
  41. menu2.setIcon(R.drawable.ic_launcher);
  42. menu2.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
  43. }
  44. MenuItem menu3 = menu.add(0, 2, 2, "Item 3");
  45. {
  46. menu3.setIcon(R.drawable.ic_launcher);
  47. menu3.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
  48. }
  49. MenuItem menu4 = menu.add(0, 3, 3, "Item 4");
  50. {
  51. menu4.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
  52. }
  53. MenuItem menu5 = menu.add(0, 4, 4, "Item 5");
  54. {
  55. menu5.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
  56. }
  57. }
  58. private boolean MenuChoice(MenuItem item){
  59. switch(item.getItemId()){
  60. case android.R.id.home:
  61. Toast.makeText(this, "You clicked on the Application icon", Toast.LENGTH_LONG).show();
  62. Intent i = new Intent(this, MyActionBarActivity.class);
  63. //FLAG_ACTIVITY_CLEAR_TOP: back stack中的一系列活动被清除。这样,如果用户
  64. //单击Back按钮,应用程序中的其他活动就不会再次显示。
  65. i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
  66. startActivity(i);
  67. return true;
  68. case 0:
  69. Toast.makeText(this, "You clicked on Item 1", Toast.LENGTH_LONG).show();
  70. return true;
  71. case 1:
  72. Toast.makeText(this, "You clicked on Item 2", Toast.LENGTH_LONG).show();
  73. return true;
  74. case 2:
  75. Toast.makeText(this, "You clicked on Item 3", Toast.LENGTH_LONG).show();
  76. return true;
  77. case 3:
  78. Toast.makeText(this, "You clicked on Item 4", Toast.LENGTH_LONG).show();
  79. return true;
  80. case 4:
  81. Toast.makeText(this, "You clicked on Item 5", Toast.LENGTH_LONG).show();
  82. return true;
  83. }
  84. return false;
  85. }
  86. }

运行效果

yyyyyyyy.png

标签: Android

Powered by emlog  蜀ICP备18021003号-1   sitemap

川公网安备 51019002001593号