(轉)Android 中右上角菜單創建(Menu)

1、 爲什麼要用到Menu呢? 手機的屏幕空間非常有限,因此充分的利用屏幕空間在手機界面設計中就顯得非常重要了。如果你的活動中有大量的菜單需要顯示,這個時候界面設計就會比較尷尬,因爲僅這些菜單就可能佔用屏幕將近三分之一的空間,這該怎麼辦呢?不用擔心,Android給我們提供了一種方式,可以讓菜單都能得到展示的同時,還能不佔用任何屏幕空間。

2、 效果圖如下:

這裏寫圖片描述

3、代碼:

(1) 首先在 res 目錄下新建一個menu文件夾,在這個文件夾下新建一個名叫menu的菜單文件(右鍵New —Menu resource file)

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:id="@+id/id_add_item" android:title="add"/>
    <item android:id="@+id/id_remove_item" android:title="remove"/>

</menu>


(2)在MainActivity中重寫onCreateOptionsMenu()方法和onOptionsItemSelected方法:

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    /**
    *創建菜單
    */
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu,menu); //通過getMenuInflater()方法得到MenuInflater對象,再調用它的inflate()方法就可以給當前活動創建菜單了,第一個參數:用於指定我們通過哪一個資源文件來創建菜單;第二個參數:用於指定我們的菜單項將添加到哪一個Menu對象當中。
        return true; // true:允許創建的菜單顯示出來,false:創建的菜單將無法顯示。
    }

    /**
    *菜單的點擊事件
    */
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {

        switch (item.getItemId()){
            case R.id.id_add_item:
                Toast.makeText(this, "你點擊了 添加!", Toast.LENGTH_SHORT).show();
                break;
            case R.id.id_remove_item:
                Toast.makeText(this, "你點擊了 移除!", Toast.LENGTH_SHORT).show();
                break;
            default:
                break;
        }

        return true;
    }
}

覺得這篇文章寫的短小精悍,很實用!原文地址

https://blog.csdn.net/qq_33833327/article/details/70224270







發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章