码迷,mamicode.com
首页 > 其他好文 > 详细

菜单(三)二级菜单和标题栏菜单

时间:2015-02-22 18:32:08      阅读:228      评论:0      收藏:0      [点我收藏+]

标签:

package com.example.menu2;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;

public class MainActivity extends Activity {

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

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		switch (item.getItemId()) {
		case R.id.create:
			Toast.makeText(MainActivity.this, "创建文件", Toast.LENGTH_SHORT).show();
			break;
		case R.id.open:
			Intent intent = new Intent(MainActivity.this, NextActivity.class);
			item.setIntent(intent);
//			Toast.makeText(MainActivity.this, "打开文件", Toast.LENGTH_SHORT).show();
			break;
		case R.id.load:
			Toast.makeText(MainActivity.this, "加载", Toast.LENGTH_SHORT).show();
			break;
		case R.id.save:
			Toast.makeText(MainActivity.this, "保存", Toast.LENGTH_SHORT).show();
			break;
		default:
			break;
		}
		return super.onOptionsItemSelected(item);
	}
}

主布局文件可以不用管

<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" >

</RelativeLayout>
res/menu/main.xml定义菜单

<menu xmlns:android="http://schemas.android.com/apk/res/android" >

    <!-- orderInCategory菜单顺序类别 -->
    <!-- app:showAsAction="never"表示不会在标题栏上面显示 -->
    <item
        android:id="@+id/menu_settings"
        android:icon="@drawable/communication"
        android:orderInCategory="100"
        android:showAsAction="ifRoom|withText"
        android:title="菜单设置">
        <menu>
            <item
                android:id="@+id/create"
                android:title="新建文件">
            </item>
            <item
                android:id="@+id/open"
                android:title="打开文件">
            </item>
        </menu>
    </item>
    <item
        android:id="@+id/system"
        android:icon="@drawable/gear"
        android:orderInCategory="101"
        android:showAsAction="ifRoom|withText"
        android:title="用户菜单">
        <menu>
            <group android:id="@+id/group1" >
                <item
                    android:id="@+id/load"
                    android:title="加载">
                </item>
            </group>
            <group android:id="@+id/group2" >
                <item
                    android:id="@+id/save"
                    android:title="保存">
                </item>
            </group>
        </menu>
    </item>

</menu>
定义一个菜单跳转的页面

<?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" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="172dp"
        android:textSize="30sp"
        android:text="这是跳转的页面" />

</RelativeLayout>
package com.example.menu2;

import android.app.Activity;
import android.os.Bundle;

public class NextActivity extends Activity{

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_next);
	}

}
技术分享

showAsAction指定菜单显示的位置这里是never

技术分享技术分享技术分享技术分享技术分享

如果改为ifRoom|withText,表示如果actionBar有空间就显示在actionBar而且显示标题

技术分享技术分享

源代码下载

这个工程在模拟器上调试正常,在真机上调试二级菜单打不开,不知道是不是手机问题

菜单(三)二级菜单和标题栏菜单

标签:

原文地址:http://blog.csdn.net/lindonglian/article/details/43908147

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!