码迷,mamicode.com
首页 > 其他好文 > 详细

Action Bar

时间:2017-08-16 19:11:45      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:新建   com   下拉列表   ...   总结   gets   目的   min   activity   

文章参考:Android官方培训课程中文版

   Action Bar是我们可以为activity实现的最重要的设计元素之一。其提供了多种 UI 特性,可以让我们的 app 与其他 Android app 保持较高的一致性,从而为用户所熟悉。核心的功能包括:

  • 一个专门的空间用来显示你的app的标识,以及指出目前所处在app的哪个页面。
  • 以一种可预见的方式访问重要的操作(比如搜索)。
  • 支持导航和视图切换(通过Tabs和下拉列表)

  总结一下:Action bar就是替换3.0以前的tittle bar和menu。

添加Action Bar

 

  最基本的Action Bar:仅仅包含一个 app icon 和 Activity 标题

    技术分享

  从Android 3.0(API lever11)开始,Action bar被包含在所有的使用Theme.Hole主题的Activity(或者是这些Activity的子类)中,当 targetSdkVersion 或 minSdkVersion 属性被设置成 “11” 或更大时,它是默认主题。

  所以,要添加action bar,只需简单地设置属性为11或者更大,例如

<manifest ... >  
    <uses-sdk android:minSdkVersion="11"  
          />  
    ...  
</manifest>
或者:  
<manifest ... >  
    <uses-sdk android:minSdkVersion="4"  
              android:targetSdkVersion="11" />  
    ...  
</manifest>  

  注意:当为自定义主题时,要让自定义的主题继承Theme.Holo

     当为android 3.0以下时(Android 2.1以上),要使用Action Bar,需要加载Android Support库。

 

 

删除Action Bar

  如果不想要Action Bat,只需把Activity的主题设置为Theme.Holo.NoActionBar即可:

  <activity android:theme="@android:style/Theme.Holo.NoActionBar"> 

  或者:

  ActionBar actionBar = getActionBar();  
  actionBar.hide();  

添加操作项

  如果我们想在Action Bar中添加比较重要的操作项,如:增加搜素按钮。以及安排不下或者不重要操作被隐藏在action overflow中。

  技术分享

在XML中添加:

  所有操作按钮和action overflow我们都在menu资源的XML文件中定义。通过在项目的 res/menu 目录中新增一个 XML 文件来为 action bar 添加操作。

  如果res目录下没有menu,之间新建一个文件夹命名为menu即可。想要为action bar新增一个操作项,就是添加一个<item>元素。例如:

<?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="@mipmap/ic_search_light"
        android:title="@string/action_item1"
        android:showAsAction="ifRoom"
        />
    <item android:id="@+id/action_item2"
        android:title="@string/action_item2"
         />
    <item android:id="@+id/action_item3"
        android:title="@string/action_item3"
        />
</menu>

  

android:showAsAction="ifRoom" 表示当action bar有可用空间时,该操作作为一个一个操作按钮来显示;当值为never(默认)时,操作将一直只在 action overflow 中显示

 

 

 

 

Action Bar

标签:新建   com   下拉列表   ...   总结   gets   目的   min   activity   

原文地址:http://www.cnblogs.com/slothccc/p/7374973.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!