Android 之ContextMenu上下文菜单


主程序如下:

  1. package com.cloay;  
  2.   
  3. import Android.app.Activity;  
  4. import android.os.Bundle;  
  5. import android.view.ContextMenu;  
  6. import android.view.ContextMenu.ContextMenuInfo;  
  7. import android.view.Menu;  
  8. import android.view.MenuItem;  
  9. import android.view.View;  
  10. import android.widget.TextView;  
  11. import android.widget.Toast;  
  12. /** 
  13.  *  
  14.  * MyContextMenuActivity.java 
  15.  * @author cloay 
  16.  * 2011-10-18 
  17.  */  
  18. public class MyContextMenuActivity extends Activity {  
  19.     private TextView textView = null;  
  20.     @Override  
  21.     public void onCreate(Bundle savedInstanceState) {  
  22.         super.onCreate(savedInstanceState);  
  23.         setContentView(R.layout.main);  
  24.         textView = (TextView) findViewById(R.id.text);  
  25.         registerForContextMenu(textView); //<span style="font-family: arial; line-height: 18px;font-size:13px; ">为视图注册上下文菜单</span>   
  26.     }  
  27.     @Override  
  28.     public void onCreateContextMenu(ContextMenu menu, View v,  
  29.             ContextMenuInfo menuInfo) {  
  30.         menu.setHeaderIcon(android.R.drawable.ic_menu_share);  
  31.         menu.setHeaderTitle("Share to friends");  
  32.         menu.add(Menu.NONE, 00"发送");  
  33.         menu.add(Menu.NONE, 11"分享");  
  34.         super.onCreateContextMenu(menu, v, menuInfo);  
  35.     }  
  36.     @Override  
  37.     public boolean onContextItemSelected(MenuItem item) {  
  38.         switch(item.getItemId()){  
  39.         case 0:  
  40.             Toast.makeText(this"发送给手机联系人!", Toast.LENGTH_SHORT).show();  
  41.             break;  
  42.         case 1:  
  43.             Toast.makeText(this"分享到微博!", Toast.LENGTH_SHORT).show();  
  44.             break;  
  45.         }  
  46.         return super.onContextItemSelected(item);  
  47.     }  
  48.       
  49. }  
布局文件如下:
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:orientation="vertical"  
  4.     android:layout_width="fill_parent"  
  5.     android:layout_height="fill_parent"  
  6.     android:paddingTop="10dip"  
  7.     >  
  8.     <TextView android:id="@+id/text"  
  9.         android:paddingTop="10dip"  
  10.         android:textColor="#FFA07A"  
  11.         android:background="@drawable/bg_normal"  
  12.         android:text="@string/hello"  
  13.         android:layout_width="wrap_content"  
  14.         android:layout_height="wrap_content"/>  
  15. </LinearLayout>  

运行效果图如下:

相关内容