上下文選單一般是真針對listview(多條資料的操作)
需求:在listview中顯示聯絡歷史的**號碼,長按顯示的上下文選單為複製號碼到撥號盤、傳送資訊、複製號碼,與之相對應的事件。
布局**:
1mainactivity<
linearlayout
xmlns:android
=""2android:layout_width
="match_parent"
3android:layout_height
="match_parent"
4android:orientation
="vertical"
>56
<
listview
7android:id
="@+id/listview"
8android:layout_width
="fill_parent"
9android:layout_height
="fill_parent"
/>
1011
linearlayout
>
1注:清單檔案中需要新增許可權package
com.android.hzy.contextmenu;
2import
3import
android.content.context;
4import
android.content.intent;
5import
android.database.cursor;
6import
android.graphics.color;
7import
android.net.uri;
8import
android.os.bundle;
9import
android.provider.calllog.calls;
10import
android.text.clipboardmanager;
11import
android.view.contextmenu;
12import
android.view.contextmenu.contextmenuinfo;
13import
android.view.menuitem;
14import
android.view.view;
15import
android.view.viewgroup;
16import
android.widget.adapterview.adaptercontextmenuinfo;
17import
android.widget.cursoradapter;
18import
android.widget.listview;
19import
android.widget.textview;
2021
public
class mainactivity extends
activity , null, null, null
);36 adapter = new myadapter(this
, c);
37//
如果資料是來自於手機本身的資料庫 使用cursoradapter的子類
38listview.setadapter(adapter);
3940
//給listview註冊上下文選單
41registerforcontextmenu(listview);42}
4344
/**45
* 建立上下文選單
46*/
47@override
48public
void
oncreatecontextmenu(contextmenu menu, view v,
49contextmenuinfo menuinfo)
5657
/**58
* 上下文選單被選擇
59*/
60@override
61public
boolean
oncontextitemselected(menuitem item)
95return
super
.oncontextitemselected(item);96}
9798
private
final
class myadapter extends
cursoradapter
104105
//建立item的布局
106@override
107public
view newview(context context, cursor cursor, viewgroup parent)
115116
//繫結資料
117@override
118public
void
bindview(view view, context context, cursor cursor)
125126
}127 }
<uses-permission
android:name
="android.permission.read_contacts"
/>
使用上下文選單ContextMenu
在windows中,我們已經習慣了在檔案上單擊右鍵來執行 開啟 重名名 剪下 刪除 等操作,這個右鍵彈出的選單就是上下文選單。你可能會笑道 哈哈,你不會連快捷鍵都不會用吧?咳咳,這個。舉個例子嘛。沒錯,windows中快捷鍵能幫助我們提高操作的效率,但是android中這招可不管用嘍,注意 andr...
上下文 上下文棧
全域性 函式 區域性 在執行全域性 前將window確定為全域性執行上下文 對全域性資料進行預處理 var定義的全域性變數 undefined,新增為window的屬性 function宣告的全域性函式 賦值 fun 新增為window的方法 this 賦值 window 開始執行全域性 在呼叫函式...
中斷上下文 程序上下文
在學習與作業系統相關的知識時候,我們經常遇到程序上下文 中斷上下文,看似熟悉又感覺不是特別清晰。這裡我們從如下幾個方面進行描述。上下文是從英文中context翻譯過來的,指的是一種環境。上下文我們看起來不怎麼熟悉,但是我們可以看context的中文翻譯,或者我們能更加的情形些。context n 語...