日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

安卓菜单选项 Popup_Menu / Context_Menu / Option_Menu

發布時間:2025/5/22 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 安卓菜单选项 Popup_Menu / Context_Menu / Option_Menu 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Option_Menu 右上角的菜單


optionmenu.xml
這個頁面沒啥用

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context="${relativePackage}.${activityClass}" ><Buttonandroid:id="@+id/button1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentBottom="true"android:layout_centerHorizontal="true"android:text="ContextMenu>>" /></RelativeLayout>

mymenu.xml
這個文件需要自己在res里面創建文件夾menu

<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" ><item android:id="@+id/item1" android:title="添加" /><item android:id="@+id/item2" android:title="刪除" /><item android:id="@+id/item3" android:title="修改" /><item android:id="@+id/item4" android:title="查詢" /><item android:id="@+id/item5" android:title="刷新" /> </menu>

Option_Menu.java

import android.app.Activity; import android.content.Intent; import android.content.ClipData.Item; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.Toast;public class Option_Menu extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.optionmenu);Button button1 = (Button)findViewById(R.id.button1);button1.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {new Intent(Option_Menu.this,Context_Menu.class);Intent intent = new Intent(Option_Menu.this,Context_Menu.class);startActivity(intent);}});}//創建選項菜單@Overridepublic boolean onCreateOptionsMenu(Menu menu) { //第一次創建菜單時調用//getMenuInflater()獲取菜單填充器 inflate填充菜單getMenuInflater().inflate(R.menu.mymenu, menu);Toast.makeText(this, "你點擊了 菜單 按鈕", 3000).show();return true;}//給選項菜單添加事件@Overridepublic boolean onOptionsItemSelected(MenuItem item) {switch (item.getItemId()) {case R.id.item1:Toast.makeText(this, "你點擊了 添加 按鈕", 3000).show();break;case R.id.item2:Toast.makeText(this, "你點擊了 刪除 按鈕", 3000).show();break;case R.id.item3:Toast.makeText(this, "你點擊了 修改 按鈕", 3000).show();break;case R.id.item4:Toast.makeText(this, "你點擊了 查詢 按鈕", 3000).show();break;case R.id.item5:Toast.makeText(this, "你點擊了 刷新 按鈕", 3000).show();break;default:break;}return super.onOptionsItemSelected(item);}//動態的修改選項菜單@Overridepublic boolean onPrepareOptionsMenu(Menu menu) {//移除菜單文件menu.removeItem(R.id.item5);//更新菜單invalidateOptionsMenu();return super.onPrepareOptionsMenu(menu);}}

Context_Menu 上下文菜單

長按才有反映

androidManifest.xml

<activityandroid:name=".Context_Menu"android:label="@string/app_name" > </activity>

contextmenu.xml

<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent" ><ListView android:id="@+id/list1"android:layout_width="wrap_content"android:layout_height="wrap_content"/><Buttonandroid:id="@+id/button2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentBottom="true"android:layout_centerHorizontal="true"android:text="PopupMenu>>" /></RelativeLayout> import android.app.Activity; import android.content.Intent; 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.OnClickListener; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.ListView; import android.widget.Toast;public class Context_Menu extends Activity{@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.contextmenu);ListView listView1 = (ListView)findViewById(R.id.list1);String[] item = {"文件1","文件2","文件3","文件4"};ArrayAdapter<String> adapter = new ArrayAdapter<String>(Context_Menu.this, android.R.layout.simple_dropdown_item_1line, item);listView1.setAdapter(adapter);//給視圖提供上下文菜單registerForContextMenu(listView1);Button button2 = (Button)findViewById(R.id.button2);button2.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {Intent intent = new Intent(Context_Menu.this,Popup_Menu.class);startActivity(intent);}});}//創建上下文菜單@Overridepublic void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {//1.視圖長按是顯示的菜單對象 2.完成長按操作的視圖 3.附加信息super.onCreateContextMenu(menu, v, menuInfo);menu.setHeaderTitle("文件操作");//1.組ID 2.菜單項ID(itemID) 3.順序 4.顯示的信息menu.add(1,2,1,"全選");menu.add(1,1,1,"復制");menu.add(1,3,0,"粘貼");}@Overridepublic boolean onContextItemSelected(MenuItem item) {switch (item.getItemId()) {case 2:Toast.makeText(this, "你點擊了 全選 按鈕", 3000).show();return true;case 1:Toast.makeText(this, "你點擊了 復制 按鈕", 3000).show();return true;case 3:Toast.makeText(this, "你點擊了 粘貼 按鈕", 3000).show();return true;default:return false;}} }

Popup_Menu

就是給一個textView類似的內容 加一個點擊菜單

AndroidManifest.xml
下面這個沒用 在首頁設計后面代碼時

<activityandroid:name=".Popup_Menu"android:label="@string/app_name" > </activity>

main_activity .xml

<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent" ><TextViewandroid:id="@+id/textView1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentLeft="true"android:layout_alignParentTop="true"android:layout_marginLeft="15dp"android:layout_marginTop="15dp"android:text="Hello!"android:textSize="25sp" /></RelativeLayout>

MainActivity .java

import android.app.Activity; import android.os.Bundle; import android.view.ContextMenu; import android.view.ContextMenu.ContextMenuInfo; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.PopupMenu.OnMenuItemClickListener; import android.widget.TextView; import android.widget.Toast;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);TextView textView = (TextView) findViewById(R.id.textView1);textView.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {// 創建彈出式菜單對象(最低版本11)android.widget.PopupMenu popup = new android.widget.PopupMenu(MainActivity.this, arg0);// 第二個參數是綁定的那個view// 獲取菜單填充器MenuInflater inflater = popup.getMenuInflater();// 填充菜單inflater.inflate(R.menu.mymenu, popup.getMenu());// 綁定菜單項的點擊事件popup.setOnMenuItemClickListener(new OnMenuItemClickListener() {@Overridepublic boolean onMenuItemClick(MenuItem arg0) {switch (arg0.getItemId()) {case R.id.item1:Toast.makeText(MainActivity.this, "你點擊了 添加 按鈕",3000).show();return true;case R.id.item2:Toast.makeText(MainActivity.this, "你點擊了 刪除 按鈕",3000).show();return true;case R.id.item3:Toast.makeText(MainActivity.this, "你點擊了 修改 按鈕",3000).show();return true;case R.id.item4:Toast.makeText(MainActivity.this, "你點擊了 查詢 按鈕",3000).show();return true;case R.id.item5:Toast.makeText(MainActivity.this, "你點擊了 刷新 按鈕",3000).show();return true;default:return false;}}});// 顯示(這一行代碼不要忘記了)popup.show();}});}}

總結

以上是生活随笔為你收集整理的安卓菜单选项 Popup_Menu / Context_Menu / Option_Menu的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。