加入收藏 | 设为首页 | 会员中心 | 我要投稿 江门站长网 (https://www.0750zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

Android控件之Menu的达成

发布时间:2021-11-24 19:50:32 所属栏目:教程 来源:互联网
导读:今天学习Menu控件比较简单,直接上代码了。首先是布局文件: ?xml version=1.0 encoding=utf-8? LinearLayout xmlns:Android=http://schemas.android.com/apk/res/android android:orientation=vertical android:layout_width=fill_parent android:layout_he

今天学习Menu控件比较简单,直接上代码了。首先是布局文件:
 
<?xml version="1.0" encoding="utf-8"?>  
<LinearLayout xmlns:Android="http://schemas.android.com/apk/res/android"  
    android:orientation="vertical"  
    android:layout_width="fill_parent"  
    android:layout_height="fill_parent"  
    >  
    <TextView android:layout_width="fill_parent"   
    android:text="Menu测试"   
    android:textSize="24dp"  
    android:layout_height="wrap_content"></TextView>  
</LinearLayout>  
下面是主程序代码:
package com.cloay;  
  
import android.app.Activity;  
import android.app.AlertDialog;  
import android.app.Notification;  
import android.app.NotificationManager;  
import android.app.PendingIntent;  
import android.content.DialogInterface;  
import android.content.Intent;  
import android.os.Bundle;  
import android.view.Menu;  
import android.view.MenuItem;  
import android.widget.Toast;  
  
/**
 * MenuActivity.java
 * @author cloay
 * 2011-9-13
 */  
public class MenuActivity extends Activity {  
    /** Called when the activity is first created. */  
    NotificationManager notificationManager;  
    Intent intent;  
    PendingIntent pendindIntent;  
    Notification notification;  
    @Override  
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.main);  
        notificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);  
        notification = new Notification();  
    }  
  
    @Override  
    public boolean onCreateOptionsMenu(Menu menu) {  
        // TODO Auto-generated method stub   
        /*
         *  
         * add()方法的四个参数,依次是:
         *  
         * 1、组别,如果不分组的话就写Menu.NONE,
         *  
         * 2、Id,这个很重要,Android根据这个Id来确定不同的菜单
         *  
         * 3、顺序,那个菜单现在在前面由这个参数的大小决定
         *  
         * 4、文本,菜单的显示文本
         */   
        //图标文件实现android系统自带的文件   
        menu.add(Menu.NONE, Menu.FIRST + 1, 1, "保存").setIcon(android.R.drawable.ic_menu_save);  
        menu.add(Menu.NONE, Menu.FIRST + 2, 2, "添加").setIcon(android.R.drawable.ic_menu_add);  
        menu.add(Menu.NONE, Menu.FIRST + 3, 3, "删除").setIcon(android.R.drawable.ic_menu_delete);  
        menu.add(Menu.NONE, Menu.FIRST + 4, 4, "发送").setIcon(android.R.drawable.ic_menu_send);  
        menu.add(Menu.NONE, Menu.FIRST + 5, 5, "帮助").setIcon(android.R.drawable.ic_menu_help);  
        menu.add(Menu.NONE, Menu.FIRST + 6, 6, "退出").setIcon(android.R.drawable.ic_menu_close_clear_cancel);  
        return super.onCreateOptionsMenu(menu);  
    }  
  
    @Override  
    public boolean onMenuItemSelected(int featureId, MenuItem item) {  
        // TODO Auto-generated method stub   
        switch(item.getItemId()){  
        case Menu.FIRST + 1:  
            Toast.makeText(MenuActivity.this, "保存菜单被点击了!", Toast.LENGTH_LONG).show();  
            //intent = new Intent(MenuActivity.this,Myhandler.class);   
            //startActivity(intent);   
            //overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);   
            break;  
        case Menu.FIRST + 2:  
            Toast.makeText(MenuActivity.this, "添加菜单被点击了!", Toast.LENGTH_LONG).show();  
            break;  
        case Menu.FIRST + 3:  
            Toast.makeText(MenuActivity.this, "删除菜单被点击了!", Toast.LENGTH_LONG).show();  
            break;  
        case Menu.FIRST + 4:  
            Toast.makeText(MenuActivity.this, "发送菜单被点击了!", Toast.LENGTH_LONG).show();  
            //通知在状态栏显示的图标   
            //notification.icon = android.R.drawable.ic_lock_silent_mode_off;   
            //通知的内容   
            //notification.tickerText = "发送菜单被点击了!";   
            //通知时发出的声音   
            //notification.defaults = Notification.DEFAULT_SOUND;   
            //intent = new Intent(MenuActivity.this,mNotification.class);   
            //intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_NEW_TASK);   
            //pendindIntent = PendingIntent.getActivity(MenuActivity.this, 0, intent, PendingIntent.FLAG_CANCEL_CURRENT);   
            //notification.setLatestEventInfo(MenuActivity.this, "按钮", "发送按钮", pendindIntent);   
            //notificationManager.notify(913, notification);   
            break;  
        case Menu.FIRST + 5:  
            Toast.makeText(MenuActivity.this, "帮助菜单被点击了!", Toast.LENGTH_LONG).show();  
            break;  
        case Menu.FIRST + 6:  
            AlertDialog alertDialog = new AlertDialog.Builder(MenuActivity.this)  
            .setTitle("提示!")  
            .setIcon(R.drawable.ask)  
            .setMessage("您确定要退出系统吗?")  
            .setPositiveButton("确定",   
            new DialogInterface.OnClickListener() {  
                @Override  
                public void onClick(DialogInterface dialog, int which) {  
                    System.exit(0);  
                    dialog.cancel();  //提示对话框关闭   
                }  
            })  
            .setNegativeButton("取消",  
            new DialogInterface.OnClickListener() {  
                  
                @Override  
                public void onClick(DialogInterface dialog, int which) {  
                    // TODO Auto-generated method stub   
                    dialog.cancel();    //关闭对话框   
                }  
            }).create();  
            alertDialog.show();  
            break;  
        }  
        return super.onMenuItemSelected(featureId, item);  
    }  
}   

(编辑:江门站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读