..
在前面的章节我们已经详细分析了该类型菜单IconMenu这是一般最常用的。 另一种资源,我们是Android提供了可以集中的结构和运作,出现的菜单中,当你点击任何Windows图标,鼠标右键在一起的ContextMenu。
其实不是的 ContextMenu显示到后,在设备上(因为它是为IconMenu)用户只需按一下按钮,而是与特定的部件是向用户显示相关的,并经过长时间右击这个小程序。
显然,在一个活动中,你可以创建的ContextMenu,然后联想到他们的各种不同的部件,或创建一个单一的ContextMenu与多个不同的部件相关联。
我们现在要展示的代码需要创建两个不同的,然后关联一个按钮的ContextMenu,另一个是一个 TextView(输入代码之前,您需要导入包android.view.ContextMenu .*):
公共无效的onCreate(包savedInstanceState){
super.onCreate(savedInstanceState);
新的LinearLayout mioLayout的LinearLayout =(本);
Button按钮=新按钮(本);
bottone.setId(1);
button1.setText(“与菜单按钮相关联”);
TextView的电视=新TextView的(本);
tv.setText(“给一个长时间的ContextMenu点击”);
tv.setId(2);
mioLayout.addView(按钮);
mioLayout.addView(电视);
setContentView(布局);
registerForContextMenu(按钮);
registerForContextMenu(电视);
}
公共无效onCreateContextMenu(ContextMenu中的ContextMenu,查看视图,ContextMenuInfo menuInfo){
如果(view.getId()== 1){
menu.setHeaderTitle(“的ContextMenu按钮”);
menu.add(Menu.NONE,1,1,“语音按钮1”);
menu.add(Menu.NONE,2,2,“语音按钮2”);
}
否则,如果(view.getId()== 2){
menu.setHeaderTitle(“的TextView的ContextMenu中”);
menu.add(Menu.NONE,3,1,“项目1 TextView的”);
menu.add(Menu.NONE,4,2,“项目2 TextView的”);
}
}
我们分析建议的代码。 至于内容的onCreate方法的代码行是唯一见过的是有关的方法,结合registerForContextMenu调用,作为一个小部件参数,任何的ContextMenu通过。
大感兴趣的是onCreateContextMenu方法,而不是命运,包含的 ContextMenu,我们要创建的代码。 在这种情况下,创造了两个部件不同的菜单,我们使用的方法的getId认为调用的方法onCreateContextMenu(设置两个部件编号是使用方法的onCreate SETID())()。
如果我们去里面添加到菜单项与通常使用shell的方法,我们希望并添加方法来设置标题setHeaderTitle的ContextMenu。
为了在关联的菜单上的按钮,你在前面的章节看到了同样的方式工作一个压力的具体行为,但是,进入内为OptionMenu方法onContextItemSelected(MenuItem的项目)所需的代码。
| |
前页(电子书)
不知道创建HTML网页。 只需25€。 |
| |
MySQL的(课程)
管理的开放源码数据库。 从39€。 |
| |
网管高级(班)
成为专业的网站管理员。 从39€。 |