Android之如何创建ActionBar

详见https://developer.android.com/training/basics/actionbar/adding-buttons.html

1.在XML文件中设置ActionBar的item

  • 文件根节点为menu,放在res/menu文件夹下
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:id="@+id/action_search"
        android:icon="@drawable/ic_action_search"
        android:title="查找"
        android:showAsAction="ifRoom"/>
    <item
        android:id="@+id/action_setting"
        android:title="设置"
        android:showAsAction="never"/>
</menu>

2.显示ActionBar

  • 在android3.0 以后的版本中已经默认添加了ActionBar,我们只需将上面定义的actions显示即可
  • 这里的Inflater为专门的MenuInflater

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = this.getMenuInflater();
        inflater.inflate(R.menu.actionbar_actions, menu);
        return super.onCreateOptionsMenu(menu);
    }

3.添加按键响应

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch(item.getItemId()){
        case R.id.action_search:
            Toast.makeText(this, "正在查找。。。", Toast.LENGTH_SHORT).show();
            break;
        case R.id.action_overflow:
            Toast.makeText(this, "更多选项。。。", Toast.LENGTH_SHORT).show();
        }
        return super.onOptionsItemSelected(item);
    }

4.添加返回主Activity功能

  • 需要在配置清单中指明parent Activity:parent Activity不需要变动
  • 需要调用方法将ActionBar中up按键(返回主Activity)显示
  • 不需要我们自己定义up按键处理方法
        <activity
            android:name=".ActionBarActivity"
            android:parentActivityName="com.njulya.demo_view.MainActivity" >
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value="com.njulya.demo_view.MainActivity" />
        </activity>
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = this.getMenuInflater();
        inflater.inflate(R.menu.actionbar_actions, menu);
        //添加返回主Activity功能
        getActionBar().setDisplayHomeAsUpEnabled(true);
        return super.onCreateOptionsMenu(menu);
    }

5. 添加常见的searchView控件

    <item
        android:id="@+id/action_search"
        android:icon="@drawable/ic_action_search"
        android:title="查找"
        android:showAsAction="ifRoom|collapseActionView"
        android:actionViewClass="android.widget.SearchView"/>
时间: 2024-10-23 10:19:44

Android之如何创建ActionBar的相关文章

Android学习笔记:ActionBar使用介绍

一.基本概念 最权威和官方的介绍请看google的api文档 http://developer.android.com/training/basics/actionbar/setting-up.html http://developer.android.com/guide/topics/ui/actionbar.html ActionBar故名思意,操作栏的含义,一般位于activity的顶部,可以放置文本标签,搜索框.按钮.图标等.是 Android3才支持的. 在eclipse创建一个默认的

【Android 应用开发】 ActionBar 基础

作者 : 万境绝尘 ([email protected]) 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/39204393 示例代码下载 :  -- GitHub : https://github.com/han1202012/Octopus_ActionBar.git -- CSDN : http://download.csdn.net/detail/han1202012/7913297 一. ActionBar 基本操作

Android中活动条ActionBar的详细使用

图一 图二 图三 图四 图五 ActionBar其提供的功能总结 图一使用ActionBar显示选项菜单项 menu_mainxml代码 启用程序图标导航 如何添加Action View 图二Activity代码区 menu_mainxml代码 clockxml 图三使用ActionBar实现Tab导航 创建ActionBar实现Tab导航步骤 MainActivity代码 DummyFragmentjava代码 图四Android 30之前的Fragment支持 Mainxml代码 MainA

Android编程动态创建视图View的方法

在Android开 发中,在Activity中关联视图View是一般使用setContentView方法,该方法一种参数是使用XML资源直接创 建:setContentView (int layoutResID),指定layout中的一个XML的ID即可,这种方法简单.另一个方法是 setContentView(android.view.View),参数是指定一个视图View对象,这种方法可以使用自定义的视图类. 在一些场合中,需要对View进行一些定制处理,比如获取到Canvas进行图像绘制,

在Android Studio中创建项目和模拟器

北京电子科技学院 实      验      报      告 课程:移动平台应用开发实践  班级:201592  姓名:杨凤  学号:20159213 成绩:___________  指导老师:娄嘉鹏   实验日期 :2015.11.1 实验名称:           在Android Studio中创建项目和模拟器 实验内容:       1.在Android Studio中创建项目 2.创建并启动Android模拟器 一.实验简介 熟悉Android的开发环境.一些基本的操作技巧以及调试技

Android Jni层 创建 linux socket 出错问题解决

问题: 想在Jni层创建 udp socket 与服务端通信,但是没有成功,最后发现竟然是创建socket失败(代码如下) // create socket g_sd = socket(AF_INET, SOCK_DGRAM, 0); if (-1 == g_sd) { perror("socket()"); goto err_socket; } 解决办法: 在 AndroidManifest.xml 文件中,添加访问网络的权限: <uses-permission android

Android使用AndEngine创建第一个程序

首先要把andengine.jar复制到libs文件夹里 01 package com.hu.anden; 02   03 import org.anddev.andengine.engine.Engine; 04 import org.anddev.andengine.engine.camera.Camera; 05 import org.anddev.andengine.engine.options.EngineOptions; 06 import org.anddev.andengine.

android判断和创建快捷方式(4.03测试通过)

整理了网上的创建方式的代码,对于快捷方式的判断使用系统api获取当前启动器来处理,这样系统定制过或者启动器不一样也没关系 . 一加权限和声明目标activity <!-- 创建快捷方式 --> <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" /> <uses-permission android:name="com.android.l

android dom方式创建xml

http://blog.csdn.net/nxh_love/article/details/7085174 在android dom 解析xml方式文章中,简单介绍了dom解析xml的应用.今天在原文章的基础上,说一下android中dom创建xml的应用. 首先:创建的文件会放在/data/data/cn.com.xxx(当前包名)/files下面. 创建生成的xml文件如下所示: [html] view plaincopy <?xml version="1.0" encodi