layout中的main.xml

XML:
<?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:layout_height ="wrap_content"
android:text ="Long-Press on of the Items in the list." />

<ListView android:id ="@+id/list_favorites"
android:layout_width ="fill_parent"
android:layout_height ="fill_parent" />

</LinearLayout>

源代码是:

package com.gggeye.study;import java.util.ArrayList;import android.app.Activity;import android.os.Bundle;import android.view.ContextMenu;import android.view.MenuItem;import android.view.View;import android.view.ContextMenu.ContextMenuInfo;import android.view.View.OnCreateContextMenuListener;import android.widget.ArrayAdapter;import android.widget.ListView; public class ContextMenuSample extends Activity {     // ===========================================================     // Final Fields     // ===========================================================     protected static final int CONTEXTMENU_DELETEITEM = 0;     // ===========================================================     // Fields     // ===========================================================     protected ListView mFavList;     protected ArrayList<Favorite> fakeFavs = new ArrayList<Favorite>();     // ===========================================================     // "Constructors"     // ===========================================================     /** Called when the activity is first created. */     @Override     public void onCreate(Bundle icicle) {          super.onCreate(icicle);          setContentView(R.layout.main);          /* Add some items to the list the listview will be showing. */          fakeFavs.add(new Favorite("John", "nice guy"));          fakeFavs.add(new Favorite("Yasmin", "hot girl"));          fakeFavs.add(new Favorite("Jack", "cool guy"));          this.mFavList = (ListView) this.findViewById(R.id.list_favorites);          initListView();     }     private void refreshFavListItems() {          mFavList.setAdapter(new ArrayAdapter<Favorite>(this,                    android.R.layout.simple_list_item_1, fakeFavs));     }     private void initListView() {          /* Loads the items to the ListView. */          refreshFavListItems();          /* Add Context-Menu listener to the ListView. */          mFavList.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {               public void onCreateContextMenu(ContextMenu conMenu, View view , ContextMenuInfo info) {                    conMenu.setHeaderTitle("ContextMenu");                    conMenu.add(0, 0, 0, "Delete this favorite!");                                      /* Add as many context-menu-options as you want to. */               }          });     }     // ===========================================================     // Methods from SuperClass/Interfaces     // ===========================================================     @Override     public boolean onContextItemSelected(MenuItem aItem) {          ContextMenuInfo menuInfo = (ContextMenuInfo) aItem.getMenuInfo();          /* Switch on the ID of the item, to get what the user selected. */          switch (aItem.getItemId()) {               case CONTEXTMENU_DELETEITEM:                    /* Get the selected item out of the Adapter by its position. */                    Favorite favContexted = (Favorite) mFavList.getAdapter()                         .getItem(0);                    /* Remove it from the list.*/                    fakeFavs.remove(favContexted);                    refreshFavListItems();                    return true; /* true means: "we handled the event". */          }          return false;     }     // ===========================================================     // Inner and Anonymous Classes     // ===========================================================     /** Small class holding some basic */     protected class Favorite {          protected String name;          protected String kindness;          protected Favorite(String name, String kindness) {               this.name = name;               this.kindness = kindness;          }          /** The ListView is going to display the toString() return-value! */          public String toString() {               return name + " (" + kindness + ")";          }          public boolean equals(Object o) {               return o instanceof Favorite && ((Favorite) o).name.compareTo(name) == 0;          }     }}

更多相关文章

  1. 【Android】Android 彩信发送的两种方式+源代码
  2. [置顶] Android源代码下载
  3. Android应用程序组件Content Provider的启动过程源代码分析(2)
  4. 【源代码】一键分享各个社交平台_android
  5. android 混编源代码
  6. Android应用程序进程启动过程的源代码分析(1)
  7. Android studio制作计算器源代码

随机推荐

  1. android 获取网络图片
  2. Android中Parcelable接口用法
  3. android 性能优化
  4. android drawable 使用shape实现复杂图像
  5. Android(安卓)3.0 Platform Highlights
  6. Android: wakelock
  7. Android(安卓)可下拉上拉效果的ScrollVie
  8. Android获取IMEI和ICCID
  9. Android实现各种对话框的变体
  10. Android(安卓)高德地图 定位+围栏