`

xml菜单_Main_1运用

XML 
阅读更多

	//初始化菜单
	public void initMenu() throws ParserConfigurationException, SAXException, IOException
	{
		//加载菜单文件
		XmlUtil xml = new XmlUtil("menu.xml");
		List<MenuBean> mainMenu = xml.getMenu();
		
		//循环主菜单
		for(int i = 0; i < mainMenu.size(); i++)
		{
			MenuBean menu = mainMenu.get(i);
			//设置菜单
			setMenu(menu, menuBar);
		}
	}
	
	/**
	 * 设置菜单
	 * @param menu	父菜单
	 * @param paramMenu	父菜单控件
	 */
	private void setMenu(MenuBean menu, JComponent paramMenu)
	{
		//取菜单的子菜单数据
		List<MenuBean> itemMenuList = menu.getItemMenu();
		int size = itemMenuList.size();
		
		//如果菜单为父菜单或者菜单含有子菜单,则用JMenu对像来add子菜单
		if(menu.getName().startsWith("MM_") || size > 0)
		{
			//新建一个菜单
			JMenu itemMenu = new JMenu();
			//设置菜单文本
			itemMenu.setText(menu.getText());
			//加入父菜单
			paramMenu.add(itemMenu);
			//将父菜单设置为本菜单,以便子菜单可加入本菜单
			paramMenu = itemMenu;
		}
		//如果菜单没有子节点,则用JMenuItem加入父菜单
		else
		{
			//解释同上
			JMenuItem itemMenu = new JMenuItem();
			itemMenu.setText(menu.getText());
			paramMenu.add(itemMenu);
			paramMenu = itemMenu;
		}
		
		//迭代所有子菜单,如果有子菜单则加入该父菜单
		for(int i = 0; i < size; i++)
		{
			setMenu(itemMenuList.get(i), paramMenu);
		}
	}
分享到:
评论

相关推荐

    ANDROID-XML.rar_android_牟佳丽

    1. 在Activity中,首先需要在`onCreateOptionsMenu()`方法中加载XML菜单资源: ```java @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main_menu, menu); ...

    Android程序源码--菜单

    1. **重写onCreateOptionsMenu()**:在Activity或Fragment中,我们需要重写此方法来加载XML菜单资源。 ```java @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.menu...

    android menu菜单使用

    首先,要使用Android菜单,我们需要在布局文件(如`activity_main.xml`)中不直接添加菜单元素,因为菜单通常在活动中动态生成。菜单的定义主要在`res/menu`目录下的XML文件中完成,例如`menu_main.xml`。在这个文件...

    用户界面1-(菜单1)

    "用户界面1-(菜单1)"这个主题主要关注的是如何在Android应用程序中创建和管理菜单,特别是通过资源文件和编程方式来实现。这里我们将深入探讨这两个方面,并且结合"myChapter(menu1)"中的实践案例来阐述相关知识点。...

    android 各种菜单详解 经典完整代码

    - 显示:在Activity的`onCreateOptionsMenu(Menu menu)`方法中加载XML菜单,`onOptionsItemSelected(MenuItem item)`处理菜单项的点击事件。 3. **上下文菜单(ContextMenu)** - 注册:在Activity中重写`...

    Android实现二级菜单和标题栏菜单

    1. 在`res/menu/main_menu.xml`中定义菜单布局: ```xml android:id="@+id/action_item1" android:title="一级菜单项1"/&gt; android:id="@+id/action_item2" android:title="一级菜单项2"/&gt; ``` 2. 在`...

    12c.03.01_xbox_animation_main

    在IT行业中,CSS(Cascading Style Sheets)是一种用于描述HTML或XML(包括SVG、MathML等各种XML方言)文档样式的样式表语言。这个“12c.03.01_xbox_animation_main”看起来像是一个项目或者教程的命名,可能涉及到...

    安卓三种菜单栏实现

    在Android应用开发中,菜单栏是用户界面的重要组成部分,提供了用户与应用交互的入口。...理解并熟练运用这三种菜单,能帮助开发者构建更易用、功能丰富的Android应用。在实际开发中,可以根据需求灵活选择和组合使用。

    android操作XML资源

    -- menu/main.xml --&gt; android:id="@+id/action_about" android:orderInCategory="100" android:title="@string/action_about"/&gt; ``` 在Activity中解析并显示: ```java @Override public boolean ...

    Android 之 上下文菜单、选项菜单、子菜单

    在Android应用开发中,上下文菜单(Context Menu)、选项菜单(OptionsMenu)和子菜单(Submenu)是三种重要的交互方式,用于提供用户与应用界面的...在实际项目中,结合具体需求灵活运用这些菜单类型,将使应用更加人性化。

    android 菜单例子

    为了使菜单图标显示出来,我们通常会在`res/drawable`目录下创建对应的SVG或PNG图标文件,并在XML菜单中引用它们,如示例中的`@drawable/ic_add`等。 在实际项目中,你可能会遇到更复杂的需求,比如动态改变菜单项...

    android menu自定义菜单 Demo

    在Android应用开发中,自定义菜单是提升用户体验和界面个性化的重要手段。本示例"android menu自定义菜单 Demo...研究这个Demo,开发者可以学习到如何在自己的项目中灵活运用自定义菜单,提升应用的交互性和用户体验。

    android 菜单演示

    在XML菜单定义中,我们可以为菜单项添加子菜单: ```xml android:id="@+id/submenu_item1" android:title="子菜单项1"/&gt; android:id="@+id/submenu_item2" android:title="子菜单项2"/&gt; ``` 子...

    android----菜单

    1. 选项菜单(Option Menu) 选项菜单是Android应用中最常见的菜单类型,通常在屏幕的右上角以三个点表示(Overflow Menu)。它包含了与整个应用程序相关的动作或选项。要创建选项菜单,开发者需要在`res/menu`目录下...

    android平台下各种菜单的实现

    在XML菜单资源中,使用`&lt;group&gt;`和`&lt;menu&gt;`标签来创建子菜单。 5. **通知栏菜单(Notification Actions)** 通知栏菜单允许用户在通知中执行操作,如直接回复消息或关闭警报。通过在`NotificationCompat.Builder`中...

    最新最实用的android菜单界面布局

    2. **菜单资源**:菜单项通常定义在`res/menu`目录下的XML文件中,如`main_menu.xml`。每个菜单项是一个`&lt;item&gt;`标签,可以设置图标、标题、快捷键等属性。 3. **菜单的创建和显示**:在Activity中,通过重写`...

    Android移动应用开发中菜单资源的定义与使用单元主要内容.pdf

    在Android中,菜单资源通常存储在`res/menu`目录下的XML文件中,例如`main_menu.xml`。XML文件内可以定义各种菜单项,包括其ID、文字、图标以及触发的事件等。通过`MenuInflater`类的`inflate`方法,可以将XML定义的...

    Android选项菜单用法实例分析

    1. **定义菜单资源**:在res/menu目录下创建XML文件,例如`main.xml`,来定义菜单项。每个菜单项由`&lt;item&gt;`标签表示,可以设置`title`(菜单项文字)、`icon`(图标)等属性。例如: ```xml android:id="@+id/...

    Android菜单menu代码

    `getMenuInflater().inflate()`方法用于将XML定义的菜单加载到内存中,`R.menu.main_menu`是对应的菜单资源ID。 当用户点击菜单项时,系统会调用`onOptionsItemSelected(MenuItem item)`方法。在这个方法里,你可以...

    Android 创建菜单Menu

    `getMenuInflater()`方法返回一个`MenuInflater`对象,用于将XML菜单资源填充到`Menu`对象中。 3. 处理菜单项的点击事件: 通过重写`onOptionsItemSelected(MenuItem item)`方法,我们可以为每个菜单项添加点击...

Global site tag (gtag.js) - Google Analytics