Training-ActionBar

阅读:http://developer.android.com/training/basics/actionbar/index.html

对于API11以下的兼容:

  1. Update your activity so that it extends ActionBarActivity. For example:
    public class Main Activit yextends ActionBarActivity{...}
  2. In your manifest file, update either the <application> element or individual <activity> elements to use one of the Theme.AppCompat themes. For example:
    <activityandroid:theme="@style/Theme.AppCompat.Light" ... >

    Note: If you've created a custom theme, be sure it uses one of the Theme.AppCompat themes as its parent. For details, see Styling the Action Bar.

 

首先,需要定义一个menu的布局文件:

<menu xmlns:android="http://schemas.android.com/apk/res/android" ><!-- Search, should appear as action button --><item android:id="@+id/action_search"android:icon="@drawable/ic_action_search"android:title="@string/action_search"android:showAsAction="ifRoom" /><!-- Settings, should always be in the overflow --><item android:id="@+id/action_settings"android:title="@string/action_settings"android:showAsAction="never" />
</menu>

接下来覆盖两个方法:

public boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu items for use in the action barMenuInflater inflater = getMenuInflater();inflater.inflate(R.menu.main_activity_actions, menu);return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {// Handle presses on the action bar itemsswitch (item.getItemId()) {case R.id.action_search:openSearch();return true;case R.id.action_settings:openSettings();return true;default:return super.onOptionsItemSelected(item);}
}

使得按钮出现并有所响应。

 

The Up button in Gmail.

首先定义父Activity

<application ... >...<!-- The main/home activity (it has no parent activity) --><activityandroid:name="com.example.myfirstapp.MainActivity" ...>...</activity><!-- A child of the main activity --><activityandroid:name="com.example.myfirstapp.DisplayMessageActivity"android:label="@string/title_activity_display_message"android:parentActivityName="com.example.myfirstapp.MainActivity" ><!-- Parent activity meta-data to support 4.0 and lower --><meta-dataandroid:name="android.support.PARENT_ACTIVITY"android:value="com.example.myfirstapp.MainActivity" /></activity>
</application>

接下来代码里呈现:

@Override
public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_displaymessage);getSupportActionBar().setDisplayHomeAsUpEnabled(true);// If your minSdkVersion is 11 or higher, instead use:// getActionBar().setDisplayHomeAsUpEnabled(true);
}

 

关于样式的配置,http://developer.android.com/training/basics/actionbar/styling.html 有详细的介绍。

关于ActionBar覆盖在内容上面的,可看:http://developer.android.com/training/basics/actionbar/overlaying.html

 

 

转载于:https://www.cnblogs.com/yutoulck/p/3395170.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/376318.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Jmeter BeanShell学习(一) - BeanShell取样器(一)

通过利用BeanShell取样器设置请求发送的参数。 第一步&#xff1a;添加BeanShell取样器 第二步&#xff1a;在BeanShell中输入执行的代码 log.info("脚本开始执行"); //意思是将字符串输出到日志消息中 vars.put("username","123163.com");//…

【转】关于Python脚本开头两行的:#!/usr/bin/python和# -*- coding: utf-8 -*-的作用 – 指定文件编码类型...

原文网址&#xff1a;http://www.crifan.com/python_head_meaning_for_usr_bin_python_coding_utf-8/ #!/usr/bin/python 是用来说明脚本语言是python的 是要用/usr/bin下面的程序&#xff08;工具&#xff09;python&#xff0c;这个解释器&#xff0c;来解释python脚本&#…

分布式系统介绍-PNUTS

PNUTS是Yahoo!的分布式数据库系统&#xff0c;支持地域上分布的大规模并发操作。它根据主键的范围区间或者其哈希值的范围区间将表拆分为表单元&#xff08;Tablet&#xff09;&#xff0c;多个表单元存储在一个服务器上。一个表单元控制器根据服务器的负载情况&#xff0c;进行…

Jmeter BeanShell学习(一) - BeanShell取样器(二)

利用BeanShell取样器获取接口返回的JSON格式的结果&#xff0c;并将该结果写入到文件。 第一步&#xff1a;添加BeanShell取样器 前面几个取样器的内容查看&#xff1a; https://blog.csdn.net/goodnameused/article/details/96985514 第二步&#xff1a;查看返回的结果格式 …

在数据库中outlet、code、outline为联合组件。hibarnate插入可如此插入

hibarnate对象的映射文件如下 <id name"outlet" type"string"> <column name"OUTLET" length"10" /> <generator class"assigned" /> </id> <!-- <property name"code" type"…

日怎么没人告诉我这博客可以改博文界面的显示宽度的

于是我妥妥的回归了。 weebly虽然定制功能强大&#xff0c;还能穿越时空发博文&#xff0c;但是太麻烦了&#xff0c;而且用着也不像一个博客。 既然解决了这个问题&#xff0c;那Lofter除了行间距也没什么缺点了&#xff0c;接着用吧&#xff0c;反正weebly也传不了大图&#…

160 - 50 DueList.5

环境&#xff1a; Windows xp sp3 工具&#xff1a; Ollydbg exeinfope 0x00 查壳 可以看出程序有加壳&#xff0c;那么我们下一步就是脱壳了。 0x01 脱壳 看上去没什么特别的地方&#xff0c;就直接 单步跟踪法 来脱壳吧 近call F7&#xff0c;远call F8 来到这里 哈&…

firefox浏览器中silverlight无法输入问题

firefox浏览器中silverlight无法输入问题今天用firefox浏览silverlight网页&#xff0c;想在文本框中输入内容&#xff0c;却没想到silverlight插件意外崩溃了。google一下&#xff0c;发现这是firefox的设置问题&#xff0c;解决方法如下&#xff1a; 1、在Firefox浏览器地址栏…

关键路径的概念和算法

AOE网&#xff1a;在一个表示工程的带权有向图中&#xff0c;用顶点表示事件&#xff0c;用有向边表示活动&#xff0c;边上的权值表示活动的持续时间&#xff0c;称这样的有向图叫做边表示活动的网&#xff0c;简称AOE网。AOE网中没有入边的顶点称为始点&#xff08;或源点&am…

160 - 51 DueList.6

环境&#xff1a; Windows xp sp3 工具&#xff1a; Ollydbg exeinfope 0x00 查壳 发现程序没有加壳&#xff0c;那么我们可以直接分析了。 0x01 分析 运行程序看一看 看到错误信息的字符串后我们可以直接搜索了。 可以看到程序会比较输入的长度是否为8位&#xff0c;如…

宽带上行速率和下行速率的区别

本文由广州宽带网http://www.ymeibai.com/整理发布&#xff0c;广州电信宽带报装&#xff0c;上广州宽带网。 我们一般所说的4M宽带&#xff0c;6M宽带&#xff0c;都是指宽带的下行速率&#xff0c;可以理解为就是下载的速度&#xff0c;平时我们用迅雷、或者网页下载软件时&a…

LazyInitializationException--由于session关闭引发的异常

1,页面中进行person.department.departmentName的读取 2,Action 中只读取了person&#xff0c;事务作用在Service的方法中 3,后台会有org.hibernate.LazyInitializationException出现 因为&#xff1a;Action中Service方法结束之前&#xff0c;session已经关闭了转载于:https:/…

160 - 52 egis.1

环境&#xff1a;windows xp 工具&#xff1a; 1、OllyDBG 2、exeinfo 3、IDA 0x00 查壳 加了UPX壳&#xff0c;那么就要脱壳了。可以使用单步法来脱壳。 UPX壳还是比较简单的&#xff0c;开头pushad&#xff0c;找个popad&#xff0c;然后就是jmp了。 然后就可以用OD来…

玩转MySQL之Linux下的简单操作(服务启动与关闭、启动与关闭、查看版本)

小弟今天记录一下在Linux系统下面的MySQL的简单使用&#xff0c;如下&#xff1a; 服务启动与关闭 启动与关闭 查看版本 环境 Linux版本&#xff1a;centeros 6.6&#xff08;下面演示&#xff09;&#xff0c;Ubuntu 12.04&#xff08;参见文章末尾红色标注字体&#xff09; M…

实验八第二题

转载于:https://www.cnblogs.com/huangsilinlana/p/3411550.html

c++ boost多线程学习(一)

本次学习相关资料如下&#xff1a; Boost C 库 第 6 章 多线程&#xff08;大部分代码的来源&#xff09; Boost程序库完全开发指南 - 深入C“准”标准库 第三版 罗剑锋著 头文件&#xff1a; #include <stdio.h> #include <string.h> #include <boost\versio…

C#中什么是泛型

所谓泛型是指将类型参数化以达到代码复用提高软件开发工作效率的一种数据类型。一种类型占位符&#xff0c;或称之为类型参数。我们知道一个方法中&#xff0c;一个变量的值可以作为参数&#xff0c;但其实这个变量的类型本身也可以作为参数。泛型允许我们在调用的时候再指定这…

敏捷自动化测试(1)—— 我们的测试为什么不够敏捷?

测试是为了保证软件的质量&#xff0c;敏捷测试关键是保证可以持续、及时的对软件质量情况进行全面的反馈。由于在敏捷开发过程中每个迭代都会增加功能、修复缺陷或重构代码&#xff0c;所以在完成当前迭代新增特性测试工作的同时&#xff0c;还要通过回归测试来保证历史功能不…

学习c++

目录 一 、 boost库&#xff1a; 1. 多线程 c boost多线程学习&#xff08;一&#xff09; 二 、数据库&#xff1a; 三、socket编程&#xff1a; c socket学习&#xff08;1.1&#xff09; c socket学习&#xff08;1.2&#xff09; c socket学习&#xff08;1.3&#x…

mysql5.6与mysql5.5不同

1.编译阶段 要明白with与without的区别&#xff0c;选项值分1和0&#xff0c;或者对应为on或off&#xff0c;代表支持与不支持&#xff1b;with的1&#xff08;on&#xff09;与without的0&#xff08;off&#xff09;是同样的&#xff0c;with的0&#xff08;off&#xff09;与…