android 点击按钮时显示菜单应怎样实现?

 我来答
唯一Cindy
推荐于2017-06-14
知道答主
回答量:91
采纳率:100%
帮助的人:29.8万
展开全部

点击button弹出对话框菜单

 

import android.app.Activity; 

import android.app.AlertDialog; 

import android.content.DialogInterface; 

import android.os.Bundle; 

import android.view.View; 

import android.view.View.OnClickListener; 

import android.widget.Button; 

publicclass choice extends Activity { 

private Button button; 

/** Called when the activity is first created. */

@Override

publicvoid onCreate(Bundle savedInstanceState) { 

super.onCreate(savedInstanceState); 

setContentView(R.layout.main); 

button=(Button)findViewById(R.id.button1); 

button.setOnClickListener(new OnClickListener(){ 

@Override

publicvoid onClick(View arg0) { 

new AlertDialog.Builder(choice.this) 

.setTitle("choice") 

.setItems(R.array.str_body, new DialogInterface.OnClickListener() { 

@Override

publicvoid onClick(DialogInterface arg0, int arg1) { 

// TODO Auto-generated method stub

String[] aryshop=getResources().getStringArray(R.array.str_body); 

new AlertDialog.Builder(choice.this) 

.setMessage(aryshop[arg1]) 

.setNegativeButton("ok", new DialogInterface.OnClickListener() { 

@Override

publicvoid onClick(DialogInterface arg0, int arg1) { 

// TODO Auto-generated method stub

}).show(); 

}).show(); 

// TODO Auto-generated method stub

}}); 

 

 

菜单项

<?xmlversion="1.0"encoding="utf-8"?>

<resources>

<stringname="hello">Hello World, 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>

hmxingkong
2012-03-02
知道答主
回答量:4
采纳率:100%
帮助的人:6350
展开全部
覆盖这方法就行,不过弹出菜单还在研究ing ^_ ^:
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_MENU) {
//do something
}
return super.onKeyDown(keyCode, event);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
黑子游记
2012-04-04 · TA获得超过970个赞
知道答主
回答量:133
采纳率:0%
帮助的人:25.9万
展开全部
很简单,使用 this.openOptionsMenu();就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
iewna
2012-02-22 · TA获得超过297个赞
知道小有建树答主
回答量:410
采纳率:0%
帮助的人:202万
展开全部
一般都是长按,然后就出来了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
涵平之1e
2017-06-14 · TA获得超过218个赞
知道小有建树答主
回答量:278
采纳率:33%
帮助的人:42.2万
展开全部
自己顶一下——已经解决了问题,通过PopupWindow可以实现在界面任意位置弹出窗口,加上animation效果和menu一样。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式