`
mark_java
  • 浏览: 16820 次
  • 性别: Icon_minigender_1
  • 来自: 新疆
社区版块
存档分类
最新评论

MenuInFlater的用法

阅读更多
MenuInfalterTest.java
public class MenuInflaterTest extends Activity {

    @Override

    public void onCreate(Bundle savedInstanceState) {

       super.onCreate(savedInstanceState);

       setContentView(R.layout.main);

    }

 

    public boolean onCreateOptionsMenu(Menu menu) {

       // 获取当前的菜单

       MenuInflater inflater = getMenuInflater();

       // 填充菜单

       inflater.inflate(R.menu.option_menu, menu);

       return true;

    }

 

    /**

     * 对菜单点击事件处理

     */

    public boolean onOptionsItemSelected(MenuItem item) {

       switch (item.getItemId()) {

       case R.id.menu_add:

           break;

       case R.id.menu_wallaper:

           break;

       case R.id.menu_search:

           break;

       case R.id.menu_setting:

           showSettings();

           break;

       }

       return super.onOptionsItemSelected(item);

    }

 

    /**

     * 显示设置选项

     */

    private void showSettings() {

       Intent settings = new Intent

       (android.provider.Settings.ACTION_SETTINGS);

       settings.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK 

              | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);

       startActivity(settings);

    }

}

}


Main.xml
<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:orientation="vertical"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    >

<TextView  

    android:layout_width="fill_parent" 

    android:layout_height="wrap_content" 

    android:text="@string/hello"

    />

</LinearLayout>


Option_menu.xml
<?xml version="1.0" encoding="utf-8"?>  

<menu xmlns:android="http://schemas.android.com/apk/res/android">  

    <item android:id="@+id/menu_add"  

        android:title="Add"  

        android:icon="@android:drawable/ic_menu_add"/>  

     <item android:id="@+id/menu_wallaper"  

        android:title="Wallpaper"  

        android:icon="@android:drawable/ic_menu_gallery"/>  

    <item  android:id="@+id/menu_search"  

        android:title="Search"  

        android:icon="@android:drawable/ic_search_category_default"/>  

    <item  android:id="@+id/menu_setting"  

        android:title="Settings"  

      android:icon="@android:drawable/ic_menu_preferences"/>                             </menu>  
分享到:
评论

相关推荐

    用Android MenuInflater创建菜单项的方法步骤

    这里使用MenuInflater的`inflate()`方法,将`R.menu.main`(对应`main.xml`)加载到传入的Menu对象中。代码如下: ```java @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater ...

    Android Menu控件源码

    使用`MenuInflater.inflate()`方法可以将XML菜单加载到Activity或Fragment中。 源码分析: 在Android框架中,Menu类是抽象的,实际使用的实现类是`com.android.internal.view.menu.MenuBuilder`。`MenuBuilder`包含...

    AndroidMenu控件Demo

    下面将详细介绍Menu控件的基本使用方法以及在Demo中的实现。 1. **Menu的创建**: - Menu是在Android的Activity或Fragment中通过`onCreateOptionsMenu()`方法来创建的。在这个方法内,我们可以使用`MenuInflater`...

    Android安卓经典设计例程源代码-MenuSample.rar

    在Activity的`onCreateOptionsMenu()`方法中,我们通常会使用`MenuInflater`的`inflate()`方法,将XML菜单布局加载到活动的菜单实例中。 3. **菜单的显示** 菜单在界面上的显示通常与`ActionBar`或`Toolbar`关联。...

    android高手进阶教程

    掌握其使用方法,对于持久化存储复杂数据结构至关重要。 ### Location的使用与获取Address 定位服务(`Location`)在地图应用、LBS(基于位置的服务)等领域发挥着核心作用。通过`LocationManager`和服务提供商,...

    android高手进阶教程 完整版 pdf

    #### 六、Android中MenuInflater的使用(布局定义菜单) - **MenuInflater介绍**:用于从XML文件加载菜单资源。 - **使用示例**: ```java MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu....

    Android应用源码之menu.zip

    在这个方法中,开发者可以使用`MenuInflater`来从XML布局文件中解析并填充Menu。XML布局文件通常位于项目的`res/menu`目录下,文件名可以自定义,比如`menu_main.xml`。 例如,一个简单的`menu_main.xml`可能包含...

    A0248使用PopupMenu1

    使用`MenuInflater`将XML定义的菜单布局文件(如`popup_menu.xml`)填充到`PopupMenu`中。`MenuInflater`是Android用于解析菜单布局并将其转换为可操作菜单对象的工具。 ```java MenuInflater inflater = menu....

    android菜单使用示例

    添加`MenuItem`后,可以使用`setShowAsAction()`方法决定菜单项是否在ActionBar中显示图标,或者使用`setTitle()`、`setIcon()`等方法来设置其标题和图标。 4. **处理点击事件** 菜单项被点击时,系统会调用`...

    动态添加菜单的资源代码

    要动态添加菜单项,我们需要在`onPrepareOptionsMenu()`或`onCreateOptionsMenu()`方法中使用`Menu.add()`方法。这个方法接受四个参数:组ID、菜单ID、菜单项的顺序号(用于排序)和标题。 ```java MenuItem ...

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

    通过`MenuInflater`类的`inflate`方法,可以将XML定义的菜单加载到活动中,例如`menuInflater.inflate(R.menu.main_menu, menu);`。 2. **选项菜单** 选项菜单是最常见的菜单类型,通常在设备的物理或虚拟Menu键被...

    Android 菜单(OptionMenu)大全 建立你自己的菜单

    对于高级用法,如动态添加菜单项、根据条件显示隐藏菜单,或者使用MenuItem的其他属性和方法,都需要对Android的菜单系统有深入的理解。 总之,Android菜单是提高用户体验的重要手段,熟练掌握OptionMenu和...

    自定义Android菜单oc

    在Activity的`onCreateOptionsMenu`方法中,使用`MenuInflater`来加载之前创建的XML菜单布局,并调用`setMenuBackground`方法来设置背景。 ```java @Override public boolean onCreateOptionsMenu(Menu menu) { ...

    Android高手进阶教程与Android基础教程

    Android高手进阶教程之----Android 中MenuInflater的使用(布局定义菜单)! .doc Android高手进阶教程之----Android 中Preferences的使用! .doc Android高手进阶教程之----Android 中自定义View的应用.doc Android高手...

    2.3.3使用actionbar

    在这里,你可以使用`MenuInflater`来加载XML资源文件,该文件定义了菜单项及其属性。 ```java @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); ...

    自定义菜单--弹出式菜单

    在这个方法中,我们可以使用`MenuInflater`来填充菜单项,然后通过`menu.add()`添加具体的操作选项。例如: ```java @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = ...

    Android_菜单(Menu)控件的使用.pdf

    此方法中使用MenuInflater来加载定义好的XML菜单布局文件。onOptionsItemSelected方法用于处理菜单项被选中的事件,它需要根据菜单项的ID来执行相应的操作。 文档还介绍了使用Menu.add方法通过代码动态添加菜单项。...

    Android之ContextMenu

    在本文中,我们将深入探讨`ContextMenu`的使用方法、实现步骤以及一些常见应用场景。 首先,`ContextMenu`的创建需要在`Activity`或`Fragment`中注册,并通过`registerForContextMenu()`方法来指定需要显示`...

    OptionMenu的使用

    在这个方法里,调用`MenuInflater`的`inflate`方法,将菜单XML文件加载到OptionMenu中。 ```java @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); ...

Global site tag (gtag.js) - Google Analytics