標籤:android style blog class code java
本文使用xml來建立操作功能表
<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/add" android:title="添加" android:orderInCategory="4" /> <item android:id="@+id/delete" android:title="刪除" android:orderInCategory="1" /> <item android:id="@+id/query" android:title="查詢" android:orderInCategory="2" /> <item android:id="@+id/update" android:title="更新" android:orderInCategory="3" /></menu>
orderInCategory屬性為排列順序
MyActivity的布局:
<?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" > <Button android:id="@+id/btn" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="彈出操作功能表" /></LinearLayout>
MyActivity.java
package com.example.contextMenuTest;import android.app.Activity;import android.os.Bundle;import android.view.ContextMenu;import android.view.MenuItem;import android.view.View;import android.widget.Button;import android.widget.Toast;public class MyActivity extends Activity { private Button button; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); button = (Button) findViewById(R.id.btn); //為按鈕註冊contextMenu,當你長按按鈕的時候就會調用onCreateContextMenu方法 registerForContextMenu(button); } /** * 注意:每次長按註冊了contextMenu的控制項,都會重新調用該方法 */ @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) { System.out.println("com.example.contextMenuTest.MyActivity.onCreateContextMenu"); getMenuInflater().inflate(R.menu.basic_main, menu); //設定標題列的表徵圖 menu.setHeaderIcon(R.drawable.ic_launcher); //設定標題列的文字 menu.setHeaderTitle("請選擇操作"); } @Override public boolean onContextItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.add: Toast.makeText(this, "你點擊了添加!", 1).show(); break; case R.id.delete: Toast.makeText(this, "你點擊了刪除!", 1).show(); break; case R.id.update: Toast.makeText(this, "你點擊了修改!", 1).show(); break; case R.id.query: Toast.makeText(this, "你點擊了查詢!", 1).show(); break; } return true; }}