Menu
来源:互联网 发布:大通医药软件 编辑:程序博客网 时间:2024/06/03 19:30
1.SubMenu
<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" 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=".MainActivity" > <EditText android:id="@+id/edittext" android:layout_width="match_parent" android:layout_height="200sp" android:text="" /></RelativeLayout>
package com.example.android_menu;import android.app.Activity;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.view.SubMenu;import android.widget.EditText;package com.example.android_menu;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.view.SubMenu;import android.widget.EditText;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);EditText editText=(EditText) findViewById(R.id.edittext);}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.SubMenu fontMenu=menu.addSubMenu("字体大小");fontMenu.setIcon(R.drawable.ic_launcher);fontMenu.setHeaderIcon(R.drawable.ic_launcher);fontMenu.setHeaderTitle("选择字体大小");fontMenu.add(0, 0x111, 0, "10号字体");fontMenu.add(0, 0x112, 0, "12号字体");fontMenu.add(0, 0x113, 0, "14号字体");menu.add(0, 99, 0, "普通菜单项");SubMenu colorMenu=menu.addSubMenu("字体颜色");colorMenu.setIcon(R.drawable.ic_launcher);colorMenu.setHeaderIcon(R.drawable.ic_launcher);colorMenu.setHeaderTitle("选择文字颜色");colorMenu.add(0, 0x116, 0, "红色");colorMenu.add(0, 0x117, 0, "绿色");colorMenu.add(0, 0x118, 0, "蓝色");MenuItem item=colorMenu.add("跳转到另一个activity");item.setIntent(new Intent(MainActivity.this,OtherActivity.class));return super.onCreateOptionsMenu(menu);}/** * 添加响应事件 * @param mi * @return */public boolean onOptionItemSelected(MenuItem mi){switch (mi.getItemId()) {case 0x111:break;default:break;}return false;}}2.ContextMenu
package com.example.android_contextmenu;import android.os.Bundle;import android.app.Activity;import android.view.ContextMenu;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.view.ContextMenu.ContextMenuInfo;import android.widget.Button;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Button button=(Button) findViewById(R.id.button);registerForContextMenu(button);}@Overridepublic 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;}@Overridepublic void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {// TODO Auto-generated method stubmenu.add(0, 0x111, 0, "红");menu.add(0, 0x112, 0, "绿");menu.add(0, 0x113, 0, "蓝");//设置为单选项menu.setGroupCheckable(0, true, true);menu.setHeaderIcon(R.drawable.ic_launcher);menu.setHeaderTitle("选择背景色");}/* (non-Javadoc) * 菜单项响应事件 * @see android.app.Activity#onContextItemSelected(android.view.MenuItem) */@Overridepublic boolean onContextItemSelected(MenuItem item) {// TODO Auto-generated method stubswitch (item.getItemId()) {case 0x111:break;default:break;}return true;}}3.用xml编写菜单选项,包括一般菜单和上下文菜单
<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" 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=".MainActivity" > <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="显示上下文菜单" /></RelativeLayout>
<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:icon="@drawable/ic_launcher" android:title="字体格式"> <menu> <item android:id="@+id/font_10" android:title="10号字体"/> <group> <item android:id="@+id/font_12" android:title="12号字体"/> <item android:id="@+id/font_14" android:title="14号字体"/> </group> </menu> </item> <item android:id="@+id/usual" android:title="普通菜单"> </item></menu>
<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android" > <group android:id="@+id/group1" android:checkableBehavior="single" > <item android:id="@+id/item1" android:title="红色" android:alphabeticShortcut="r" > </item> <item android:id="@+id/item2" android:title="绿色" android:alphabeticShortcut="g" > </item> <item android:id="@+id/item3" android:title="蓝色" android:alphabeticShortcut="b" > </item> </group></menu>package com.example.android_xmlmenu;import android.os.Bundle;import android.app.Activity;import android.view.ContextMenu;import android.view.Menu;import android.view.MenuInflater;import android.view.MenuItem;import android.view.View;import android.view.ContextMenu.ContextMenuInfo;import android.widget.Button;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Button button=(Button) findViewById(R.id.button);registerForContextMenu(button);}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.MenuInflater menuInflater=new MenuInflater(MainActivity.this);menuInflater.inflate(R.menu.mymenu, menu);return super.onCreateOptionsMenu(menu);}@Overridepublic void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {// TODO Auto-generated method stubMenuInflater menuInflater=new MenuInflater(MainActivity.this);menuInflater.inflate(R.menu.contextxml, menu);menu.setHeaderIcon(R.drawable.ic_launcher);menu.setHeaderTitle("请选择颜色");super.onCreateContextMenu(menu, v, menuInfo);}/* (non-Javadoc) * 处理响应 * @see android.app.Activity#onOptionsItemSelected(android.view.MenuItem) */@Overridepublic boolean onOptionsItemSelected(MenuItem item) {// TODO Auto-generated method stubreturn super.onOptionsItemSelected(item);}/* (non-Javadoc) * 处理上下文菜单响应 * @see android.app.Activity#onContextItemSelected(android.view.MenuItem) */@Overridepublic boolean onContextItemSelected(MenuItem item) {// TODO Auto-generated method stubreturn super.onContextItemSelected(item);}}4.PopupMenu
<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android" > <group android:id="@+id/group1" > <itemandroid:id="@+id/item1"android:title="文本格式" > </item> <item android:id="@+id/item2" android:title="字体颜色"> </item> </group></menu><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" 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=".MainActivity" > <Button android:id="@+id/button" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="PopupMenu菜单" /></RelativeLayout>package com.example.android_popupmenu;import android.os.Bundle;import android.annotation.SuppressLint;import android.app.Activity;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.widget.Button;import android.widget.PopupMenu;import android.widget.Toast;import android.widget.PopupMenu.OnMenuItemClickListener;@SuppressLint("NewApi")public class MainActivity extends Activity {private Button button;private PopupMenu popup;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button = (Button) findViewById(R.id.button);button.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubonPopupButtonClick();}});}@Overridepublic 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;}public void onPopupButtonClick() {popup = new PopupMenu(MainActivity.this, button);getMenuInflater().inflate(R.menu.popup_menu, popup.getMenu());popup.setOnMenuItemClickListener(new OnMenuItemClickListener() {@Overridepublic boolean onMenuItemClick(MenuItem arg0) {// TODO Auto-generated method stubswitch (arg0.getItemId()) {case R.id.item1:Toast.makeText(MainActivity.this, "点击了菜单", 1).show();break;default:break;}return true;}});popup.show();}}
0 0
- Menu
- Menu
- menu
- menu
- menu
- Menu
- MENU
- menu
- menu
- Menu
- Menu
- menu
- menu
- Menu
- Menu
- Menu
- MENU
- Menu
- Android程序 依赖库引用Gson 报java.lang.NoClassDefFoundError: com/google/gson/Gson 解决方法
- 使用Chrome DevTools的Timeline和Profiles提高Web应用程序的性能
- 命令模式(实例三,undo)
- 美国男子因坠机落海后自拍 海中淡定等待救援!
- entity 使用函数
- Menu
- Android 4.0与4.2 全屏实现方式并且在设置里可实时控制
- Linux shell 脚本攻略 第二章 命令之乐
- C++中public,protected,private派生类继承问题和访问权限问题
- ReactiveCocoa与Functional Reactive Programming
- cocos2d baidu
- strut2学习笔记6-拦截器
- jquery ui日历中文化
- 交互设计专业必备知识,看到了好的课程,给自己一点储备