关于OptionMenu实例
点击qc1按钮后会弹出图:
点击qc1按钮后会弹出图:
activity的代码:
package com.tmacsky;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.widget.Toast;
public class MenuTest extends Activity{
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.gravery);
}
//通过调用xml布局文件来创建显示menu
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
MenuInflater inflaterr = getMenuInflater();
inflaterr.inflate(R.menu.option_menu, menu);
return true;
}
//点击了menu上的item按钮后会执行下面的方法函数
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
Toast.makeText(this, item.getTitle(), 2000).show();
return super.onOptionsItemSelected(item);
}
//菜单关闭之后会执行下面的函数
public void onOptionsMenuClosed(Menu menu) {
// TODO Auto-generated method stub
Toast.makeText(this, "菜单关闭了", 3000).show();
}
//点击menu后先显示下面的文字,即在你点击菜单后,菜单显示之前调用下面的函数
public boolean onPrepareOptionsMenu(Menu menu){
Toast.makeText(this, "在菜单显示之前会调用此操作", 3000).show();
return true;
}
}
option_menu.xml布局文件的代码:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:title="qa1" android:icon="@drawable/qa"/>
<item android:title="qb1" android:icon="@drawable/qc">
<menu>
<group android:checkableBehavior="single">
<item android:title="table1"/>
<item android:title="table2" />
<item android:title="table3" />
<item android:title="table4" />
</group>
</menu>
</item>
<item android:title="qc1" android:icon="@drawable/qc">
<menu>
<item android:checkable="true" android:title="call" android:icon="@drawable/qc"/>
<item android:title="Phone" android:icon="@drawable/qc"/>
<item android:title="Mess" android:icon="@drawable/qc"/>
</menu>
</item>
</menu>
关于ContextMenu实例:
长按了test中的任何一个list都会弹出下图:
然后你再点上图的qb1,就会弹出:
activity代码:
package com.tmacsky;
import java.util.ArrayList;
import android.R.anim;
import android.app.Activity;
import android.app.ListActivity;
import android.os.Bundle;
import android.text.AndroidCharacter;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.Adapter;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Toast;
public class MenuTest extends ListActivity{
private String[] itemStrings = new String[]{"test1","test2","test3","test4","test5"};
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
//设置adapter并绑定
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_expandable_list_item_1,itemStrings);
setListAdapter(adapter);
//注册contextMenu
registerForContextMenu(getListView());
}
//点击后会提示点击了那个文件
public boolean onContextItemSelected(MenuItem item) {
// TODO Auto-generated method stub
Toast.makeText(this, item.getTitle(), 2000).show();
return true;
}
//设置长按list弹出后的窗口的title
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
// TODO Auto-generated method stub
menu.setHeaderTitle("contextMenu");
menu.setHeaderIcon(R.drawable.qa);
super.onCreateContextMenu(menu, v, menuInfo);
super.getMenuInflater().inflate(R.menu.option_menu, menu);
}
//通过调用xml布局文件来创建显示menu
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
MenuInflater inflaterr = getMenuInflater();
inflaterr.inflate(R.menu.option_menu, menu);
return true;
}
//点击了menu上的item按钮后会执行下面的方法函数
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
Toast.makeText(this, item.getTitle(), 2000).show();
return super.onOptionsItemSelected(item);
}
//菜单关闭之后会执行下面的函数
public void onOptionsMenuClosed(Menu menu) {
// TODO Auto-generated method stub
Toast.makeText(this, "菜单关闭了", 3000).show();
}
//点击menu后先显示下面的文字,即在你点击菜单后,菜单显示之前调用下面的函数
public boolean onPrepareOptionsMenu(Menu menu){
Toast.makeText(this, "在菜单显示之前会调用此操作", 3000).show();
return true;
}
}
这里的xml代码和OptionMenu的xml代码一直~祝周末愉快!
分享到:
相关推荐
本实例是optionMenu contextMenu popupMenu的集合,里面含有三个例子,每一个menu都有一个例子,对于初学者来说,很有用
android里使用menu,包括OptionMenu、ContextMenu、SubMenu,适合初学者,非常简单的代码,另外里面还附加了一个word文档教程,欢迎广大初学android的朋友下载使用!注释也很多的!
Android 菜单(OptionMenu)大全 Pro Android 源码
Android 菜单(OptionMenu)大全 建立你自己的菜单
Android Menu的使用方法介绍,包含OptionMenu,ContextMenu等
主要介绍了Android中选项菜单(OptionMenu)的创建方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下
主要介绍了Android中OptionMenu用法,实例分析了Android中OptionMenu创建操作的相关实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
该代码展示了Android的选项菜单怎么用xml去实现 个人认为这种方式写optionsMenu菜单比较好,代码清晰 不需要去类里面定义那么多变量, 这里提供的是一个这样一个小功能的代码,给初学者使用的一个模块,高手请勿喷
1、在android Activity中重写onCreateOptionsMenu(),onOptionsItemSeclected() 与onCreateContextMenu()与onContextItemSelected()来实现OptionsMenu 与ContextMenu菜单。 2、子菜单的使用
主要分为三个部分:1.选项菜单OptionMenu;2.上下文菜单ContextMenu;3.子菜单SubMenu;博客地址:http://blog.csdn.net/pfe_nova/article/details/38620411
自学 Android 做的第二十三个 Android 程序,使用了 OptionMenu
6.7、使用菜单(Menu)资源: 6.8、样式(Style)和主题(Theme)资源: 6.9、属性(Attribute)资源: 6.10、使用原始资源: 6.11、国际化和资源自适应: 第7章、图形与图像处理 7.1、使用简单图片:Drawable; Bitmap...
Android 通过NavigationView+DrawerLayout来实现侧滑菜单的功能和点击事件+弹出对话框,有需要的下载来看看
OptionMenu的基本使用
自学 Android 做的第二十四个 Android 程序,使用了 XML 的 OptionMenu
智能家居系统 选项菜单OptionMenu.doc 学习资料 复习资料 教学资源
contextmenu 的使用案例,同时包含了popmenu和optionmenu
实现了Android中的几种常用的菜单:选项菜单(OptionMenu)、上下文菜单(ContextMenu)、弹出式菜单(PopupMenu)、子菜单(SubMenu)