-
add方法的 4个参数查看全部
-
Toast.makeText(this, "点击了菜单一", Toast.LENGTH_SHORT).show();查看全部
-
4444查看全部
-
33333查看全部
-
22222查看全部
-
创建选项菜单查看全部
-
Toast.setGravity(参数1,参数2,参数3)第一个参数是Toast的位置,第二个参数是x轴方向偏移量(负向左正向右),第三个参数是y轴方向偏移量(负向上正向下)查看全部
-
通过xml布局实现子菜单 在menu文件夹下创建菜单布局main.xml: <item android:showAsAction="never" android:title="文件"> <menu> <item android:id="@+id/new_file" android:showAsAction="never" android:title="新建"/> <item android:id="@+id/open_file" android:showAsAction="never" android:title="打开"/> <item android:id="@+id/save_file" android:showAsAction="never" android:title="保存"/> </menu> </item> <item android:showAsAction="never" android:title="编辑"> <menu> <item android:id="@+id/copy_edit" android:showAsAction="never" android:title="复制"/> <item android:id="@+id/paste_edit" android:showAsAction="never" android:title="粘贴"/> <item 依此类推。。。/> </menu> </item> 在 MainActivity中重写onCreateOptionsMenu(): MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.main,menu); 最后重写点击之后的响应事件onOptionsItemSelected()。查看全部
-
子菜单的实现 重写onCreateOptionsMenu(): SubMenu file = menu.addSubMenu("文件"); SubMenu edit = menu.addSubMenu("编辑"); // 方法add(int groupId,int itemId,int order,charSequence title) // 使用 GroupId 为菜单项分组,“1”属于文件组,“2”属于编辑组 file.add(1,1,1,"新建"); file.add(1,2,1,"打开"); file.add(1,3,1,"保存"); file.setHeaderTitle("文件操作"); file.setHeaderIcon(R.mipmap.ic_launcher); edit.add(2,1,1,"复制"); edit.add(2,2,1,"粘贴"); edit.add(2,3,1,"剪切"); edit.setHeaderTitle("编辑操作"); edit.setHeaderIcon(R.mipmap.ic_launcher); return super.onCreateOptionsMenu(menu); 重写onOptionsItemSelected() if (item.getGroupId()==1){ // 先判断 GroupId switch (item.getItemId()){ case 1: Toast.makeText(this, "点击新建", Toast.LENGTH_SHORT).show(); break; case 2: Toast.makeText(this, "点击打开", Toast.LENGTH_SHORT).show(); break; case 3: Toast.makeText(this, "点击保存", Toast.LENGTH_SHORT).show(); break; } }else if(item.getGroupId()==2){ switch (item.getItemId()){ case 1:依此类推。查看全部
-
设置ListView的显示内容,需要设置适配器 showListView(){ ListView listView = (ListView)findViewById(R.id.listView); ArrayAdapter<String> adapter = new ArrayAdapter<String> (this,android.R.layout.simple_list_item_1,getData()); listView.setAdapter(adapter); // 给listView设置上下文菜单,首先需要注册菜单,然后重写onCreateContextMenu() this.registerForContextMenu(listView); } onCreateContextMenu(){ // 设置Menu显示的内容 menu.setHeaderTitle("文件操作"); menu.setHeaderIcon(R.mipmap.ic_launcher); // 方法一,代码添加 menu.add(1,1,1,"复制"); menu.add(1,2,1,"粘贴"); menu.add(1,3,1,"剪切"); menu.add(1,4,1,"重命名"); // 方法二,通过xml添加 MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.context_menu,menu); } 点击的响应事件: onContextItemSelected() switch (item.getItemId()){ case 1: Toast.makeText(this, "点击复制", Toast.LENGTH_SHORT).show(); break; 依此类推; }查看全部
-
什么是ContextMenu? 例如Windows系统的右键菜单,在Android中长按某个文件夹,会跳出菜单,这个菜单就是ContextMenu。 ContextMenu与OptionMenu的区别 1. OptionMenu对应的是activity,一个activity只能拥有一个选项菜单; 2. ContextMenu对应的是View,每一个View都可以设置上下文菜单; 3. 一般情况下ContextMenu常用于ListView或者GridView。 ContextMenu创建方法 首先给View 注册上下文菜单registerForContextMenu() 添加上下文菜单内容 onCreateContextMenu() -- 可以通过代码动态添加; -- 可以加载xml文件中的菜单项。 设置菜单点击后的响应事件 onContextItemSelected()。查看全部
-
如图,动态设置菜单项( 使用menu.add()方法 )。之前是通过xml的方式,现在是通过代码的动态添加。 menu.add()方法返回的是 MenuItem 对象,可以通过该对象设置更多样式。 ------------ 摘自评论区: onCreateOptionsMenu()方法是由系统调用的,如果想动态调用这个方法只能通过模拟按键实现: Instrumentation inst = new Instrumentation(); inst.sendKeyDownSync(KeyEvent.KEYCODE_MENU); 需要注意的是,模拟按键的动作必须在子线程中进行。 ------------- 页面跳转: case 100: Intent intent = new Intent(this,MenuActivity.class); // 由本页面跳转到 MenuActivity页面(自己定义) item.setIntent(intent); break; 注意,不要忘了在配置文件中声明 MenuActivity:<activity android:name=".MenuActivity"/>查看全部
-
关于Android Studio自带的模拟器一般没有菜单键,但有快捷键:Ctrl+M 可以调出菜单栏。 如何查看模拟器的快捷键? 可以在模拟器右侧栏的最下面的三个横点,也就是“More”那里,点击进入。然后选择Help,选择Keyboard shortcuts一栏,就可以看到很多快捷键,包括菜单栏的快捷键。查看全部
举报
0/150
提交
取消