optionMenu 右側菜單的簡單使用

optionMenu是什麼呢?就是你的APP頂部欄右側可以點擊的那三個點點,上圖


效果就這樣收上去就是圖一,點擊彈出來就是圖二的效果


首先要在res文件夾下創建一個menu文件夾,在在menu文件夾下創建一個xml文件文件叫啥名兒隨意,我就叫menu,畢竟取名字比較麻煩

如圖

然後就編輯menu文件裏面的內容了例如


關於item 用法和安卓的其他控件一毛一樣,都可以有ID 點擊事件

android:checkable="true" 會出現複選框的樣式

item 裏面可以繼續嵌套menu , menu裏面就可以繼續嵌套item 依此循環,能套多少層沒試過
但是item不能直接套item

例如
<item android:title="擴展菜單"
        >
        <menu>
            <item
                android:icon="@mipmap/ic_launcher"
                android:title="123"
                ></item>
            <item
                android:icon="@mipmap/ic_launcher"
                android:title="456"></item>
        </menu>
    </item>



但是很奇怪的就是第一層的菜單裏面加icon圖標並不能顯示出來

擴展之後的就沒問題


完整界面XML如下

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:title="菜單"
        android:checkable="true"
        >
    </item>
        <item
            android:checkable="false"
            android:id="@+id/menu"
            android:title="不知道">
        </item>
        <item
            android:icon="@mipmap/ic_launcher"
            android:title="213"></item>

    <item android:title="擴展菜單"
        >
        <menu>
            <item
                android:icon="@mipmap/ic_launcher"
                android:title="123"
                ></item>
            <item
                android:icon="@mipmap/ic_launcher"
                android:title="456"></item>
        </menu>
    </item>
</menu>

然後最後就是在activity中重寫onCreateOptionsMenu(Menu menu)這個方法


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);

        return true;
    }
}

然後就是各種點擊事件的處理。。。

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