免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1701 | 回复: 0
打印 上一主题 下一主题

Android中menu详解(转) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-09-18 21:01 |只看该作者 |倒序浏览
Android中menu详解(转)

   Android中菜单的使用时非常频繁的,能够达到很好的使用效果,其实他的实现方法非常简单,下面为大家讲解,首先看图:



JAVA代码:

  1. package com.smart;
  2. import android.app.Activity;
  3. import android.os.Bundle;
  4. import android.view.Menu;
  5. import android.view.MenuItem;
  6. import android.view.View;
  7. import android.widget.Button;
  8. public class SmartMenu extends Activity {
  9. public static final int ITEM0=Menu.FIRST;//系统值
  10. public static final int ITEM1=Menu.FIRST+1;
  11. public static final int ITEM2=Menu.FIRST+2;
  12. public static final int ITEM3=Menu.FIRST+3;
  13. Button button1;
  14. Button button2;
  15. Button button3;
  16. Button button4;
  17. // private Menu menu;
  18. // private Menu menu

  19. /** Called when the activity is first created. */
  20.     @Override
  21.     public void onCreate(Bundle savedInstanceState) {
  22.         super.onCreate(savedInstanceState);
  23.         setContentView(R.layout.main);
  24.         button1=(Button)findViewById(R.id.button1);
  25.         button2=(Button)findViewById(R.id.button2);
  26.         button3=(Button)findViewById(R.id.button3);
  27.         button4=(Button)findViewById(R.id.button4);
  28.         button1.setVisibility(View.INVISIBLE);
  29.         button2.setVisibility(View.INVISIBLE);
  30.         button3.setVisibility(View.INVISIBLE);
  31.         button4.setVisibility(View.INVISIBLE);
  32. //        
  33.     }
  34.    
  35.    
  36.     @Override
  37. public boolean onCreateOptionsMenu(Menu menu) {
  38.   super.onCreateOptionsMenu(menu);
  39.   menu.add(0, ITEM0, 0,"显示button1");
  40.   menu.add(0, ITEM1,0,"显示button2");
  41.   menu.add(0, ITEM2,0,"新建");
  42.   menu.add(0, ITEM3,0,"打开");
  43.   menu.findItem(ITEM1);//可以设置按钮的背景
  44.   return true;
  45. }

  46. @Override
  47. public boolean onOptionsItemSelected(MenuItem item) {
  48.   
  49.   switch (item.getItemId()) {
  50.   case ITEM0:
  51.    actionClickMenuItem1();
  52.    break;
  53.   case ITEM1:
  54.    actionClickMenuItem2();
  55.    break;
  56.   case ITEM2:
  57.    actionClickMenuItem3();
  58.    break;
  59.   case ITEM3:
  60.    actionClickMenuItem4();
  61.    break;
  62.   }
  63.   
  64.   return super.onOptionsItemSelected(item);
  65. }

  66. //第一个事件的方法

  67.    private void actionClickMenuItem1(){
  68.     setTitle("button1可见");
  69.     button1.setVisibility(View.VISIBLE);//可见
  70.     button2.setVisibility(View.INVISIBLE);//不可见
  71.    
  72.    }
  73.    //第2个事件的方法
  74.    private void actionClickMenuItem2(){
  75.     setTitle("button2可见");
  76.     button1.setVisibility(View.INVISIBLE);//不可见
  77.     button2.setVisibility(View.VISIBLE);//可见
  78.    
  79.    }
  80.    private void actionClickMenuItem3(){
  81.     setTitle("button2可见");
  82.     button1.setVisibility(View.INVISIBLE);//不可见
  83.     button2.setVisibility(View.INVISIBLE);//不可见
  84.     button3.setVisibility(View.VISIBLE);//可见
  85.     button4.setVisibility(View.INVISIBLE);//不可见
  86.    
  87.    
  88.    
  89.   }
  90.    
  91.    private void actionClickMenuItem4(){
  92.     setTitle("button2可见");
  93.     button1.setVisibility(View.INVISIBLE);//不可见
  94.     button2.setVisibility(View.INVISIBLE);//不可见
  95.     button3.setVisibility(View.INVISIBLE);//不可见
  96.     button4.setVisibility(View.VISIBLE);//可见
  97.    
  98.    }
  99.    
  100. }



  101. XML布局文件:

  102. <?xml version="1.0" encoding="utf-8"?>
  103. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  104.     android:orientation="vertical"
  105.     android:layout_width="fill_parent"
  106.     android:layout_height="wrap_content"
  107.     >
  108.    
  109.     <Button
  110.     android:id="@+id/button1"
  111.      android:layout_width="fill_parent"
  112.     android:layout_height="wrap_content"
  113.     android:text="我的菜单我做主_1"
  114.     />
  115.    
  116.       <Button
  117.     android:id="@+id/button2"
  118.      android:layout_width="fill_parent"
  119.     android:layout_height="wrap_content"
  120.     android:text="我的菜单我做主_2"
  121.     />
  122.    
  123.      <Button
  124.     android:id="@+id/button3"
  125.      android:layout_width="fill_parent"
  126.     android:layout_height="wrap_content"
  127.     android:text="小子,给记住这代码"
  128.     />
  129.    
  130.       <Button
  131.     android:id="@+id/button4"
  132.     android:layout_width="fill_parent"
  133.     android:layout_height="wrap_content"
  134.     android:text="哈哈,你欺负我呀,我就能记住"
  135.     />
  136.    
  137. </LinearLayout>
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP