现在的位置: 首页 > 移动开发 > 正文

android 上下文菜单(长按)通过程序生成

2019年07月20日 移动开发 ⁄ 共 2114字 ⁄ 字号 评论关闭

 

 

 

上下文菜单非常类似于Windows操作系统中的右键菜单,在Android操作系统中,用户可以通过长按打开上下文菜单。

 

 

在MyMenuDemo.java程序中

package com.li.menu;

 

import android.app.Activity;

import android.os.Bundle;

import android.view.ContextMenu;

import android.view.ContextMenu.ContextMenuInfo;

import android.view.Menu;

import android.view.MenuItem;

import android.view.View;

import android.widget.ArrayAdapter;

import android.widget.ListView;

import android.widget.Toast;

 

public class MyMenuDemo extends Activity {

  private String data[] = new String[]{

     "河池学院","http://blog.sina.com.cn/u/2853310902",

     "数学系:李叶文","中国高校","helloliyewen@163.com"};  //定义ListView的显示项

  private ListView listView = null;

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        this.listView = new ListView(this);

        this.listView.setAdapter(new ArrayAdapter<String>(this,

           android.R.layout.simple_expandable_list_item_1,

           this.data));

        super.setContentView(this.listView);

        super.registerForContextMenu(this.listView);

    }

  @Override

  public boolean onContextItemSelected(MenuItem item) {

     switch(item.getItemId()){

     case Menu.FIRST + 1:

       Toast.makeText(this,"您选择的是“添加联系人”项",Toast.LENGTH_LONG).show();

       break;

     case Menu.FIRST + 2:

       Toast.makeText(this,"您选择的是“查看详情”项",Toast.LENGTH_LONG).show();

     break;

     case Menu.FIRST + 3:

       Toast.makeText(this,"您选择的是“删除信息”项",Toast.LENGTH_LONG).show();

     break;

     case Menu.FIRST + 4:

       Toast.makeText(this,"您选择的是“另存为”项",Toast.LENGTH_LONG).show();

     break;

     case Menu.FIRST + 5:

       Toast.makeText(this,"您选择的是“编辑”项",Toast.LENGTH_LONG).show();

     break;

     }

     return false;

  }

  @Override

  public void onContextMenuClosed(Menu menu) {

     Toast.makeText(this,"上下文菜单关闭了",Toast.LENGTH_LONG).show();

  }

  @Override

  public void onCreateContextMenu(ContextMenu menu, View v,

       ContextMenuInfo menuInfo) {

     super.onCreateContextMenu(menu, v, menuInfo);

     menu.setHeaderTitle("信息操作");

     menu.add(Menu.NONE,Menu.FIRST + 1,1,"添加联系人");

     menu.add(Menu.NONE,Menu.FIRST + 2,2,"查看详情");

     menu.add(Menu.NONE,Menu.FIRST + 3,3,"删除信息");

     menu.add(Menu.NONE,Menu.FIRST + 4,4,"另存为");

     menu.add(Menu.NONE,Menu.FIRST + 5,5,"编辑");

  }

   

   

}

抱歉!评论已关闭.