本文实例讲述了Android中ContextMenu用法。分享给大家供大家参考。具体如下:
main.xml文件如下:
1
2
3
4
5
6
7
8
9
10
11
|
<? 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" > < ListView Android:id = "@android:id/list" Android:layout_width = "fill_parent" Android:layout_height = "fill_parent" ></ ListView > </ LinearLayout > |
simple_list_item_1.xml文件如下:
1
2
3
4
5
6
7
8
9
10
11
12
|
<? xml version = "1.0" encoding = "utf-8" ?> < LinearLayout xmlns:Android = "http://schemas.android.com/apk/res/android" Android:layout_width = "wrap_content" Android:layout_height = "wrap_content" Android:orientation = "vertical" > < TextView Android:id = "@+id/label" Android:layout_width = "fill_parent" Android:layout_height = "wrap_content" Android:textSize = "30sp" ></ TextView > </ LinearLayout > |
MenuDemoActivity.java如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
package com.yyl; import Android.app.ListActivity; 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; public class MenuDemoActivity extends ListActivity { public static final int EIGHT_ID = Menu.FIRST+ 1 ; public static final int SIXTEEN_ID = Menu.FIRST+ 2 ; public static final int TWENTY_FOUR_ID = Menu.FIRST+ 3 ; public static final int TWO_ID = Menu.FIRST+ 4 ; public static final int THIRTY_TWO_ID = Menu.FIRST+ 5 ; public static final int FORTY_ID = Menu.FIRST+ 6 ; public static final int ONE_ID = Menu.FIRST+ 7 ; String[] items={ "lorem" , "ipsum" , "dolor" , "sit" , "amet" , "consectetuer" , "adipiscing" , "elit" , "morbi" , "vel" , "ligula" , "vitae" , "arcu" , "aliquet" , "mollis" , "etiam" , "vel" , "erat" , "placerat" , "ante" , "porttitor" , "sodales" , "pellentesque" , "augue" , "purus" }; @Override public void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.main); setListAdapter( new ArrayAdapter( this ,R.layout.simple_list_item_1,R.id.label,items)); //注册ContextView到view中 registerForContextMenu(getListView()); } //重写该方法,生成ContextMenu菜单 @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { this .populateMenu(menu); super .onCreateContextMenu(menu, v, menuInfo); } private void populateMenu(Menu menu) { menu.add(Menu.NONE, ONE_ID, Menu.NONE, "1 Pixel" ); menu.add(Menu.NONE, TWO_ID, Menu.NONE, "2 Pixels" ); menu.add(Menu.NONE, EIGHT_ID, Menu.NONE, "8 Pixels" ); menu.add(Menu.NONE, SIXTEEN_ID, Menu.NONE, "16 Pixels" ); menu.add(Menu.NONE, TWENTY_FOUR_ID, Menu.NONE, "24 Pixels" ); menu.add(Menu.NONE, THIRTY_TWO_ID, Menu.NONE, "32 Pixels" ); menu.add(Menu.NONE, FORTY_ID, Menu.NONE, "40 Pixels" ); } } |
希望本文所述对大家的Android程序设计有所帮助。