Android studio實(shí)現(xiàn)菜單操作
本文實(shí)例為大家分享了Android studio實(shí)現(xiàn)菜單操作的具體代碼,供大家參考,具體內(nèi)容如下
要求:
1.設(shè)置“打開”、“關(guān)閉”和“退出”三個菜單項(xiàng)的菜單。
2.當(dāng)單擊“打開“菜單項(xiàng)時(shí),使用Log.i顯示”文件已打開“
3.當(dāng)單擊“關(guān)閉“菜單項(xiàng)時(shí),使用Log.i顯示”文件已關(guān)閉“
4.當(dāng)單擊“打開“菜單項(xiàng)時(shí),使用Toast顯示”確定要退出嗎?“
方法一:
main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/text1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="長時(shí)間點(diǎn)這"/>
</LinearLayout>
menu.xml:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/open"
android:title="打開">
</item>
<item
android:id="@+id/close"
android:title="關(guān)閉">
</item>
<item
android:id="@+id/quit"
android:title="退出">
</item>
</menu>
.java:
package com.example.first;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.ContextMenu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private static final String TAG="MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView tv=(TextView)findViewById(R.id.text1);
registerForContextMenu(tv);
}
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
MenuInflater inflater=new MenuInflater(this);
inflater.inflate(R.menu.menu,menu);
menu.setHeaderTitle("選擇:");//為菜單頭設(shè)置標(biāo)題
}
@Override
public boolean onContextItemSelected(MenuItem item) {
switch (item.getItemId()){
case R.id.open:
Log.i(TAG, "已經(jīng)打開");
break;
case R.id.close:
Log.i(TAG, "已經(jīng)關(guān)閉");
break;
case R.id.quit:
Toast.makeText(this, "已經(jīng)退出", Toast.LENGTH_SHORT).show();
break;
}
return super.onContextItemSelected(item);
}
}




方法二:
main.xml 啥都不寫
menu.xml不變
.java改變:
package com.example.first;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;
import android.util.Log;
public class MainActivity extends AppCompatActivity {
private static final String TAG="MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
//用onCreateOptionsMenu()顯示菜單
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu,menu);//getMenuInflater()方法得到MenuInflater
//調(diào)用inflate接收兩個參數(shù)
//R.menu.main指調(diào)用menu文件下的main資源文件
return true;//返回true,允許創(chuàng)建的菜單顯示,返回false不顯示
}
//定義菜單響應(yīng)事件
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()){
case R.id.open:
Log.i(TAG, "已經(jīng)打開");
break;
case R.id.close:
Log.i(TAG, "已經(jīng)關(guān)閉");
break;
case R.id.quit:
Toast.makeText(this, "已經(jīng)退出", Toast.LENGTH_SHORT).show();
break;
}
return true;
}
}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android 自定義通用的loadingview實(shí)現(xiàn)代碼
本篇文章主要介紹了Android 自定義通用的loadingview實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-01-01
Android編寫Router路由框架實(shí)例過程詳解
為什么要用路由框架,路由框架哪些好處等等,在此就不做解釋2023-04-04
最常用的框架是ARouter,那是不是可以自己寫一個路由框架呢,不參考ARouter的方式
Android Kotlin 基本數(shù)據(jù)類型詳解
Kotlin是一種靜態(tài)類型語言,適用于Android開發(fā),Kotlin的基本數(shù)據(jù)類型包括數(shù)值類型、字符類型、布爾類型和數(shù)組類型,本文介紹Android Kotlin 基本數(shù)據(jù)類型,感興趣的朋友一起看看吧2025-03-03
Android判斷服務(wù)是否運(yùn)行及定位問題實(shí)例分析
這篇文章主要介紹了Android判斷服務(wù)是否運(yùn)行及定位問題,以實(shí)例形式較為詳細(xì)的分析了Android判斷服務(wù)運(yùn)行狀態(tài)及獲取經(jīng)緯度的相關(guān)實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-09-09
Android開發(fā)中簡單設(shè)置啟動界面的方法
這篇文章主要介紹了Android開發(fā)中簡單設(shè)置啟動界面的方法,涉及Android界面布局、加載、跳轉(zhuǎn)等相關(guān)操作技巧,需要的朋友可以參考下2018-01-01
Android應(yīng)用中仿今日頭條App制作ViewPager指示器
這篇文章主要介紹了Android應(yīng)用中仿今日頭條App制作ViewPager指示器的例子,一般就是導(dǎo)航條在翻頁時(shí)的動態(tài)字體變色效果,需要的朋友可以參考下2016-04-04
Android實(shí)現(xiàn)電子羅盤(指南針)方向傳感器的應(yīng)用
今天小編就為大家分享一篇關(guān)于Android實(shí)現(xiàn)電子羅盤(指南針)方向傳感器的應(yīng)用,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-03-03
Android中方法數(shù)超限問題與啟動優(yōu)化詳解
這篇文章主要給大家介紹了Android中方法數(shù)超限問題與啟動優(yōu)化的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-11-11

