android弹出菜单
㈠ 请教实现android工程中点击菜单弹出一个对话框
说下思路的,既然是弹出对话框,肯定是需要一个dialog,既然这个dialog中的一些属性是自己设定的,肯定是要设置自己自定义的dialog,怎么样才能弹出dialog呢,当你监听点击菜单的事件,记得几贴哟,逻辑很重要的,其他的就要靠你自己的了
android 点击按钮 让菜单从上面弹出
分类: 移动开发/ Android/ 文章
VC/MFC 菜单从绘,点击菜单项目发送自定义消息,弹出afxMessagebox("1");//报错
菜单自绘,点击菜单项目发送自定义消息,弹出afxMessagebox("1");//报错wm_buttondown消息里//自定义消息SendMessage发送自定义消息,报错。换成PostMessage就没事。这是啥原理? 解决方案贴相关
VC/MFC 怎么点击按钮弹出右键菜单,并且按钮保持按上状态
如何点击按钮弹出右键菜单,并且按钮保持按下状态?环境:VS2008 MFC问题:我重绘了按钮,分为3个状态:正常、鼠标进入、鼠标按下;当点击鼠标时会在按钮下面弹出右键菜单。现在问题是右键菜单弹出后,按钮的按下状态就消失了!!请问如何在弹出菜单时使按钮保持按下状态,在菜单消失时按钮状态恢复正常?解决方案你试试看设立一个
VC/MFC MDI怎么实现一个功能,菜单下点击一个按钮弹出一个ClistView
MDI如何实现一个功能,菜单上点击一个按钮弹出一个ClistView?MDI如何实现一个功能,菜单上点击一个按钮弹出一个ClistView?注意是CListView,不是弹对话框。这个功能怎么实现啊??解决方案 CDockablePane ?用VS2008SP1/VS2010建个SDI/MDI工程就看到了
Android Android点按钮弹出系统菜单的方法,该如何处理
Android点按钮弹出系统菜单的方法不点击menu按钮、点击自定义的按钮弹出系统的menu菜单如何实现、菜鸟请教、解决方案http://www.eoeandroid.com/thread-69418-1-1.html 解决方案 调用这句KeyEvent event=new KeyEvent
Delphi 小弟我想点击菜单上面的一个按钮后,直接就类式与按下了PrintScreen键,但是小弟我对键盘消息不是很清楚,大侠
我想点击菜单上面的一个按钮后,直接就类式与按下了PrintScreen键,但是我对键盘消息不是很清楚,请教各位大侠!我是这样实现的: 在按钮的单击事件里面这样写的: SendMessage(Handle,WM_KEYUP,VK_SNAPSHOT,0
Android Android 弹出菜单 - PathButton
Android 弹出菜单 ---- PathButton http://www.oschina.net/p/pathbutton
Android 点击弹出层如何处理点击到上面层
点击弹出层如何避免点击到下面层 。如在原来的列表上 放了一个隐藏显示的ReltionLayout 里面放了一些 选项 选择排序或过滤条件,这时在列表上面弹出显示这个ReltionLayout ,点击这个ReltionLayout 空白处 没有刚好点击
C++ VS2010点击菜单弹出对话框解决方案
VS2010点击菜单弹出对话框在mfc下,新建一个菜单项,然后给它加一个消息处理函数,就是弹出一个对话框的。但是,加一个消息处理函数的前提是这个菜单的Popup属性是false,可是,当popup属性是false的时候,程序运行出来那个菜单项是灰色的,根本点不动,更不用说弹出对话框了。不知道这个情况大家有没有遇到过呢
Web前端 jQuery点击弹出上拉菜单
jQuery点击弹出下拉菜单<title>导航——点击弹出内容</title> <style type="text/css"> .navgation{margin:0;padding:0;list-style-type:none
Android android弹出菜单银屏移动
android弹出菜单屏幕移动有这样一个效果:从屏幕左边弹出一个宽度为w对话框,然后屏幕里面的activity就往左边移动w距离。请问用什么方法可以实现这个方法呢解决方案
ASP.NET 点击按钮弹出网页的有关问题
点击按钮弹出网页的问题请问一下各位,我在网页上放置一个按钮,点击时弹出另一个页面,在我的机子上运行时可以弹出,当把网站打包安装到另一台电脑时,点击按钮,就弹不出网页,这是是么问题,谢谢! 我按钮中的代码是这样的 protected void
VB VB怎么点击网页弹出提示窗口的按钮
VB如何点击网页弹出提示窗口的按钮某网页,点击按钮后会出现一个弹出窗口,在网上找,在CSDN上问,会找出其弹出窗口的文字内容了,但是其上面还有是、否或确定取消一两个按钮,我现在不会点这个按钮,大家支下招哈!解决方案 帮楼主顶一下... 解决方案 你这其实是一个dhtml问题吧,坛子中常有类似的问题的,搜索一下吧
VC/MFC 点击按钮后弹出另一个对话框解决方法
点击按钮后弹出另一个对话框用CDialog类做出一个选择界面:一个按钮 点击此按钮后,会弹出另外的一个对话框按钮(里面可以有输入命令的编辑框,也有可以点击确定的按钮) 请问,该如何实现上述的功能? 如何调用? 请详细些,谢谢!解决方案在拟新建的对话框类中加入Create 调用即可。 解决方案无模式
java Web开发 点击按钮,弹出保存、打开对话框解决方案
点击按钮,弹出保存、打开对话框怎样在html页面上加按钮跟响应实现这个功能?就比如像平时网页上看到的下载,一点就出来个对话框,有打开,保存,取消的,点保存还能选择保存路径的,怎么搞???解决方案你只要把文件链接放到页面上,其他的就是浏览器的事情了。 解决方案探讨你只要把文件链接放到页面上,其他的就是浏览器的事情
ASP.NET 如何点击按钮弹出一个小窗口
怎么点击按钮弹出一个小窗口?我做的是投票系统点击投票按钮弹出一个小窗口 小窗口里面是投票用的!~解决方案先做个隐藏的DIV,点击时再显示 解决方案window.openwindow.showModalDialogDiv第三方控件 解决方案javascript 解决方案传值可以跟url传一样吧。。?UserID
㈡ android如何弹出一个占屏幕一半的菜单
android弹出一个占屏幕一半的菜单,可以使用popupwindow,设置弹出的xy轴的距离占据屏幕一半即可,如下代码:
packagecom.example.hellopopupwindow;
importandroid.os.Bundle;
importandroid.app.Activity;
importandroid.content.Context;
importandroid.util.Log;
importandroid.view.LayoutInflater;
importandroid.view.MotionEvent;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.view.View.OnTouchListener;
importandroid.view.ViewGroup.LayoutParams;
importandroid.widget.Button;
importandroid.widget.PopupWindow;
importandroid.widget.Toast;
{
privateContextmContext=null;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mContext=this;
Buttonbutton=(Button)findViewById(R.id.button);
button.setOnClickListener(newView.OnClickListener(){
@Override
publicvoidonClick(Viewview){
showPopupWindow(view);
}
});
}
privatevoidshowPopupWindow(Viewview){
//一个自定义的布局,作为显示的内容
ViewcontentView=LayoutInflater.from(mContext).inflate(
R.layout.pop_window,null);
//设置按钮的点击事件
Buttonbutton=(Button)contentView.findViewById(R.id.button1);
button.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewv){
Toast.makeText(mContext,"buttonispressed",
Toast.LENGTH_SHORT).show();
}
});
finalPopupWindowpopupWindow=newPopupWindow(contentView,
LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT,true);
popupWindow.setTouchable(true);
popupWindow.setTouchInterceptor(newOnTouchListener(){
@Override
publicbooleanonTouch(Viewv,MotionEventevent){
Log.i("mengdd","onTouch:");
returnfalse;
//这里如果返回true的话,touch事件将被拦截
//拦截后PopupWindow的onTouchEvent不被调用,这样点击外部区域无法dismiss
}
});
//如果不设置PopupWindow的背景,无论是点击外部区域还是Back键都无法dismiss弹框
//我觉得这里是API的一个bug
popupWindow.setBackgroundDrawable(getResources().getDrawable(
R.drawable.selectmenu_bg_downward));
//设置好参数之后再show
popupWindow.showAsDropDown(view);
}
}
㈢ android 怎么实现点击菜单在顶部和底部同时呼出不同的菜单选项
菜单是用户界面中最常见的元素之一,使用非常频繁,在Android中,菜单被分为如下三种,选项菜单(OptionsMenu)、上下文菜单(ContextMenu)和子菜单(SubMenu),以下说的是创建OptionsMenu
一、概述
public boolean onCreateOptionsMenu(Menu menu):使用此方法调用OptionsMenu。
public boolean onOptionsItemSelected(MenuItem item):选中菜单项后发生的动作。
public void onOptionsMenuClosed(Menu menu):菜单关闭后发生的动作。
public boolean onPrepareOptionsMenu(Menu menu):选项菜单显示之前onPrepareOptionsMenu方法会被调用,你可以用此方法来根据打当时的情况调整菜单。
public boolean onMenuOpened(int featureId, Menu menu):单打开后发生的动作。
二、默认样式
默认样式是在屏幕底部弹出一个菜单,这个菜单我们就叫他选项菜单OptionsMenu,一般情况下,选项菜单最多显示2排每排3个菜单项,这些菜单项有文字有图标,也被称作Icon Menus,如果多于6项,从第六项开始会被隐藏,在第六项会出现一个More里,点击More才出现第六项以及以后的菜单项,这些菜单项也被称作Expanded Menus。下面介绍。
1.main.xml
<?xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextViewandroid:layout_width="wrap_content"
android:layout_height="wrap_content"android:text="请点击Menu键显示选项菜单"
android:id="@+id/TextView02"/>
</LinearLayout>
2。重载onCreateOptionsMenu(Menu menu)方法
重载onCreateOptionsMenu(Menu menu)方法,并在此方法中添加菜单项,最后返回true,如果false,菜单则不会显示。
(Menumenu)
@Override
(Menumenu){
/*
*
*add()方法的四个参数,依次是:
*
*1、组别,如果不分组的话就写Menu.NONE,
*
*2、Id,这个很重要,Android根据这个Id来确定不同的菜单
*
*3、顺序,那个菜单现在在前面由这个参数的大小决定
*
*4、文本,菜单的显示文本
*/
menu.add(Menu.NONE,Menu.FIRST+1,5,"删除").setIcon(
android.R.drawable.ic_menu_delete);
//setIcon()方法为菜单设置图标,这里使用的是系统自带的图标,同学们留意一下,以
//android.R开头的资源是系统提供的,我们自己提供的资源是以R开头的
menu.add(Menu.NONE,Menu.FIRST+2,2,"保存").setIcon(
android.R.drawable.ic_menu_edit);
menu.add(Menu.NONE,Menu.FIRST+3,6,"帮助").setIcon(
android.R.drawable.ic_menu_help);
menu.add(Menu.NONE,Menu.FIRST+4,1,"添加").setIcon(
android.R.drawable.ic_menu_add);
menu.add(Menu.NONE,Menu.FIRST+5,4,"详细").setIcon(
android.R.drawable.ic_menu_info_details);
menu.add(Menu.NONE,Menu.FIRST+6,3,"发送").setIcon(
android.R.drawable.ic_menu_send);
returntrue;
}
3。为菜单项注册事件
使用onOptionsItemSelected(MenuItem item)方法为菜单项注册事件
(MenuItemitem)
@Override
(MenuItemitem){
switch(item.getItemId()){
caseMenu.FIRST+1:
Toast.makeText(this,"删除菜单被点击了",Toast.LENGTH_LONG).show();
break;
caseMenu.FIRST+2:
Toast.makeText(this,"保存菜单被点击了",Toast.LENGTH_LONG).show();
break;
caseMenu.FIRST+3:
Toast.makeText(this,"帮助菜单被点击了",Toast.LENGTH_LONG).show();
break;
caseMenu.FIRST+4:
Toast.makeText(this,"添加菜单被点击了",Toast.LENGTH_LONG).show();
break;
caseMenu.FIRST+5:
Toast.makeText(this,"详细菜单被点击了",Toast.LENGTH_LONG).show();
break;
caseMenu.FIRST+6:
Toast.makeText(this,"发送菜单被点击了",Toast.LENGTH_LONG).show();
break;
}
returnfalse;
}
4.完整代码
packagecom.android.menu;
importandroid.app.Activity;
importandroid.os.Bundle;
importandroid.view.Menu;
importandroid.view.MenuItem;
importandroid.widget.Toast;
{
/**.*/
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@Override
(Menumenu){
/*
*
*add()方法的四个参数,依次是:
*
*1、组别,如果不分组的话就写Menu.NONE,
*
*2、Id,这个很重要,Android根据这个Id来确定不同的菜单
*
*3、顺序,那个菜单现在在前面由这个参数的大小决定
*
*4、文本,菜单的显示文本
*/
menu.add(Menu.NONE,Menu.FIRST+1,5,"删除").setIcon(
android.R.drawable.ic_menu_delete);
//setIcon()方法为菜单设置图标,这里使用的是系统自带的图标,同学们留意一下,以
//android.R开头的资源是系统提供的,我们自己提供的资源是以R开头的
menu.add(Menu.NONE,Menu.FIRST+2,2,"保存").setIcon(
android.R.drawable.ic_menu_edit);
menu.add(Menu.NONE,Menu.FIRST+3,6,"帮助").setIcon(
android.R.drawable.ic_menu_help);
menu.add(Menu.NONE,Menu.FIRST+4,1,"添加").setIcon(
android.R.drawable.ic_menu_add);
menu.add(Menu.NONE,Menu.FIRST+5,4,"详细").setIcon(
android.R.drawable.ic_menu_info_details);
menu.add(Menu.NONE,Menu.FIRST+6,3,"发送").setIcon(
android.R.drawable.ic_menu_send);
returntrue;
}
@Override
(MenuItemitem){
switch(item.getItemId()){
caseMenu.FIRST+1:
Toast.makeText(this,"删除菜单被点击了",Toast.LENGTH_LONG).show();
break;
caseMenu.FIRST+2:
Toast.makeText(this,"保存菜单被点击了",Toast.LENGTH_LONG).show();
break;
caseMenu.FIRST+3:
Toast.makeText(this,"帮助菜单被点击了",Toast.LENGTH_LONG).show();
break;
caseMenu.FIRST+4:
Toast.makeText(this,"添加菜单被点击了",Toast.LENGTH_LONG).show();
break;
caseMenu.FIRST+5:
Toast.makeText(this,"详细菜单被点击了",Toast.LENGTH_LONG).show();
break;
caseMenu.FIRST+6:
Toast.makeText(this,"发送菜单被点击了",Toast.LENGTH_LONG).show();
break;
}
returnfalse;
}
@Override
publicvoidonOptionsMenuClosed(Menumenu){
Toast.makeText(this,"选项菜单关闭了",Toast.LENGTH_LONG).show();
}
@Override
(Menumenu){
Toast.makeText(this,
"选项菜单显示之前onPrepareOptionsMenu方法会被调用,你可以用此方法来根据打当时的情况调整菜单",
Toast.LENGTH_LONG).show();
//如果返回false,此方法就把用户点击menu的动作给消费了,onCreateOptionsMenu方法将不会被调用
returntrue;
}
}
5.运行效果
㈣ android 下如何实现一个 从屏幕某一水平位置向上弹出的菜单,并且菜单每行只有一个选项。
简单直接点:
首先建立一个layout,布局为你想要的弹出后的菜单,然后将它隐藏掉。
在你想要弹出菜单的地方设置事件,当单击后,把隐藏的菜单显示出来,显示的同时,设置菜单的坐标是动态的,例如你单击的位置在屏幕的X:500 Y:500位置,拿你的菜单初始化应该在TOPX:500 TOPY:500,当你点击按钮处,把菜单show,同时,TOPX-- ,TOPY不变。过程中最好加淡入淡出效果,这样更自然。
㈤ android开发了一个视频播放器,现想在上面弹出一个菜单,不影响背景视频播放,怎么实现
使用popupwindow即可实现。
参考:http://blog.csdn.net/kkfdsa132/article/details/6403404
㈥ android的这种弹出菜单(窗口)怎么实现
可以用popupWindow
public class PopUpActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
LayoutInflater inflater = LayoutInflater.from(this);
// 引入窗口配置文件
View view = inflater.inflate(R.layout.main2, null);
// 创建PopupWindow对象
final PopupWindow pop = new PopupWindow(view, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, false);
Button btn = (Button) findViewById(R.id.btn);
// 需要设置一下此参数,点击外边可消失
pop.setBackgroundDrawable(new BitmapDrawable());
//设置点击窗口外边窗口消失
pop.setOutsideTouchable(true);
// 设置此参数获得焦点,否则无法点击
pop.setFocusable(true);
}
}
popupWindow.showAsDropDown(v);让它出现在上方标题栏的下方
布局里可以写成listview,也可以写成死布局
还有就是ActionBar,但个人感觉ActionBar没有popupWindow灵活,反正我一般这种情况都会用popupWindow,看个人爱好
㈦ android 怎么实现左侧推出导航菜单
Android左侧推出导航菜单可以让Activity继承PopupWindow类来实现的弹出窗体,布局可以根据自己定义设计。弹出效果主要使用了translate和alpha样式实现。具体的做法是下列代码:
第一步:设计弹出窗口xml:
Xml代码
<?xmlversion="1.0"encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical"
>
<LinearLayout
android:id="@+id/pop_layout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical"
android:layout_alignParentBottom="true"
android:background="@drawable/btn_style_alert_dialog_background"
>
<Button
android:id="@+id/btn_take_photo"
android:layout_marginLeft="20dip"
android:layout_marginRight="20dip"
android:layout_marginTop="20dip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="拍照"
android:background="@drawable/btn_style_alert_dialog_button"
android:textStyle="bold"
/>
<Button
android:id="@+id/btn_pick_photo"
android:layout_marginLeft="20dip"
android:layout_marginRight="20dip"
android:layout_marginTop="5dip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="从相册选择"
android:background="@drawable/btn_style_alert_dialog_button"
android:textStyle="bold"
/>
<Button
android:id="@+id/btn_cancel"
android:layout_marginLeft="20dip"
android:layout_marginRight="20dip"
android:layout_marginTop="15dip"
android:layout_marginBottom="15dip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="取消"
android:background="@drawable/btn_style_alert_dialog_cancel"
android:textColor="#ffffff"
android:textStyle="bold"
/>
</LinearLayout>
</RelativeLayout>
第二步:创建SelectPicPopupWindow类继承PopupWindow:
Java代码
importandroid.app.Activity;
importandroid.content.Context;
importandroid.graphics.drawable.ColorDrawable;
importandroid.view.LayoutInflater;
importandroid.view.MotionEvent;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.view.View.OnTouchListener;
importandroid.view.ViewGroup.LayoutParams;
importandroid.widget.Button;
importandroid.widget.PopupWindow;
{
privateButtonbtn_take_photo,btn_pick_photo,btn_cancel;
privateViewmMenuView;
publicSelectPicPopupWindow(Activitycontext,OnClickListeneritemsOnClick){
super(context);
LayoutInflaterinflater=(LayoutInflater)context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
mMenuView=inflater.inflate(R.layout.alert_dialog,null);
btn_take_photo=(Button)mMenuView.findViewById(R.id.btn_take_photo);
btn_pick_photo=(Button)mMenuView.findViewById(R.id.btn_pick_photo);
btn_cancel=(Button)mMenuView.findViewById(R.id.btn_cancel);
//取消按钮
btn_cancel.setOnClickListener(newOnClickListener(){
publicvoidonClick(Viewv){
//销毁弹出框
dismiss();
}
});
//设置按钮监听
btn_pick_photo.setOnClickListener(itemsOnClick);
btn_take_photo.setOnClickListener(itemsOnClick);
//设置SelectPicPopupWindow的View
this.setContentView(mMenuView);
//设置SelectPicPopupWindow弹出窗体的宽
this.setWidth(LayoutParams.FILL_PARENT);
//设置SelectPicPopupWindow弹出窗体的高
this.setHeight(LayoutParams.WRAP_CONTENT);
//设置SelectPicPopupWindow弹出窗体可点击
this.setFocusable(true);
//设置SelectPicPopupWindow弹出窗体动画效果
this.setAnimationStyle(R.style.AnimBottom);
//实例化一个ColorDrawable颜色为半透明
ColorDrawabledw=newColorDrawable(0xb0000000);
//设置SelectPicPopupWindow弹出窗体的背景
this.setBackgroundDrawable(dw);
//mMenuView添加OnTouchListener监听判断获取触屏位置如果在选择框外面则销毁弹出框
mMenuView.setOnTouchListener(newOnTouchListener(){
publicbooleanonTouch(Viewv,MotionEventevent){
intheight=mMenuView.findViewById(R.id.pop_layout).getTop();
inty=(int)event.getY();
if(event.getAction()==MotionEvent.ACTION_UP){
if(y<height){
dismiss();
}
}
returntrue;
}
});
}
}
第三步:编写MainActivity类实现测试:
Java代码
importandroid.app.Activity;
importandroid.os.Bundle;
importandroid.view.Gravity;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.TextView;
{
//自定义的弹出框类
;
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextViewtv=(TextView)this.findViewById(R.id.text);
//把文字控件添加监听,点击弹出自定义窗口
tv.setOnClickListener(newOnClickListener(){
publicvoidonClick(Viewv){
//实例化SelectPicPopupWindow
menuWindow=newSelectPicPopupWindow(MainActivity.this,itemsOnClick);
//显示窗口
menuWindow.showAtLocation(MainActivity.this.findViewById(R.id.main),Gravity.BOTTOM|Gravity.CENTER_HORIZONTAL,0,0);//设置layout在PopupWindow中显示的位置
}
});
}
//为弹出窗口实现监听类
=newOnClickListener(){
publicvoidonClick(Viewv){
menuWindow.dismiss();
switch(v.getId()){
caseR.id.btn_take_photo:
break;
caseR.id.btn_pick_photo:
break;
default:
break;
}
}
};
}
上述的代码实现了从底部弹出,也可以根据PopupWindow类设置从左下部弹出。
Android的对话框有两种:PopupWindow和AlertDialog。它们的不同点在于:
AlertDialog的位置固定,而PopupWindow的位置可以随意
AlertDialog是非阻塞线程的,而PopupWindow是阻塞线程的
PopupWindow的位置按照有无偏移分,可以分为偏移和无偏移两种;按照参照物的不同,可以分为相对于某个控件(Anchor锚)和相对于父控件。具体如下
showAsDropDown(View anchor):相对某个控件的位置(正左下方),无偏移
showAsDropDown(View anchor, int xoff, int yoff):相对某个控件的位置,有偏移
showAtLocation(View parent, int gravity, int x, int y):相对于父控件的位置(例如正中央Gravity.CENTER,下方Gravity.BOTTOM等),可以设置偏移或无偏移
㈧ android 点击按钮时显示菜单应怎样实现
点击button弹出对话框菜单
importandroid.app.Activity;
importandroid.app.AlertDialog;
importandroid.content.DialogInterface;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
{
privateButtonbutton;
/**.*/
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button=(Button)findViewById(R.id.button1);
button.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
newAlertDialog.Builder(choice.this)
.setTitle("choice")
.setItems(R.array.str_body,newDialogInterface.OnClickListener(){
@Override
publicvoidonClick(DialogInterfacearg0,intarg1){
//TODOAuto-generatedmethodstub
String[]aryshop=getResources().getStringArray(R.array.str_body);
newAlertDialog.Builder(choice.this)
.setMessage(aryshop[arg1])
.setNegativeButton("ok",newDialogInterface.OnClickListener(){
@Override
publicvoidonClick(DialogInterfacearg0,intarg1){
//TODOAuto-generatedmethodstub
}
}).show();
}
}).show();
//TODOAuto-generatedmethodstub
}});
}
}
菜单项
<?xmlversion="1.0"encoding="utf-8"?>
<resources>
<stringname="hello">HelloWorld,choice!</string>
<stringname="app_name">ChoiceMenu</string>
<stringname="strtitle">按我选择:</string>
<stringname="str">你选择的是:</string>
<arrayname="str_body">
<item>选项1</item>
<item>选项2</item>
<item>选项3</item>
<item>选项4</item>
<item>选项5</item>
<item>选项6</item>
</array>
</resources>