OptionMenu的简单使用

来源:互联网 发布:mac如何设置qq邮箱 编辑:程序博客网 时间:2024/06/10 20:31

过了个年将近一个月没写代码了,今天写一个关于OptionMenu的基本使用方法。需要注意的是一个Activity中只能有一个optionMenu
首先看看效果:
这里写图片描述

下面是MainActivity中的代码:

package demo.liuchen.com.menutest;import android.graphics.Color;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.widget.TextView;/** * 使用选项菜单的步骤 * 1.在Activity中复写oncreateOptionsMenu,向选项菜单中添加item * 2.在Activity中复写onOptionMenuSelected方法,实现菜单item的点击事件 */public class MainActivity extends AppCompatActivity {    private TextView textView;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        textView = (TextView) findViewById(R.id.textView);    }    /**     * 重写选项菜单     * @param menu     * @return     */    @Override    public boolean onCreateOptionsMenu(Menu menu) {        //1.在res中创建menu文件夹(必须创建)        //2.在menu中创建此菜单文件(必须创建)        //3.使用MenuInflater将menu中的菜单文件内容填充到当前Activity中的menu对象上        getMenuInflater().inflate(R.menu.main,menu);        return super.onCreateOptionsMenu(menu);    }    /**     * 拦截选项菜单中的的item点击事件     * item.getItemId()通过此方法判断是点击的是哪一个item的操作     */    @Override    public boolean onOptionsItemSelected(MenuItem item) {        switch (item.getItemId()){            case R.id.action_quit:            finish();            break;            case R.id.select_RED:                textView.setTextColor(Color.RED);                break;            case R.id.select_Green:                textView.setTextColor(Color.GREEN);                break;            case R.id.select_Blue:                textView.setTextColor(Color.BLUE);                break;            case R.id.set_size_30:                textView.setTextSize(30);                break;            case R.id.set_size_25:                textView.setTextSize(25);                break;            case R.id.set_size_20:                textView.setTextSize(20);                break;        }        return super.onOptionsItemSelected(item);    }}

下面是menu中的main文件的代码:

<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android">    <item        android:id="@+id/action_quit"        android:title="退出" />    <item        android:id="@+id/select_Color"        android:title="颜色切换">        <menu>            <group>                <item                    android:id="@+id/select_RED"                    android:title="红色" />                <item                    android:id="@+id/select_Blue"                    android:title="蓝色" />                <item                    android:id="@+id/select_Green"                    android:title="绿色" />            </group>        </menu>    </item>    <item        android:id="@+id/set_size"        android:title="设置字体">        <menu>            <group>                <item                    android:id="@+id/set_size_20"                    android:title="20"/>                <item                    android:id="@+id/set_size_25"                    android:title="25"/>                <item                    android:id="@+id/set_size_30"                    android:title="30"/>            </group>        </menu>    </item></menu>

下面是xml文件

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:id="@+id/activity_main"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context="demo.liuchen.com.menutest.MainActivity">    <TextView        android:id="@+id/textView"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="Hello World!" /></RelativeLayout>

好了optionMenu的基本用法就是这样的,如果需要demo的话点击下面的超链接: http://download.csdn.net/my

0 0
原创粉丝点击