`

ActionBar简介

阅读更多
Action bar是一个标识应用程序和用户位置的窗口功能,并且给用户提供操作和导航模式。在大多数的情况下,当你需要突出展现用户行为或全局导航的activity中使用action bar,因为action bar能够使应用程序给用户提供一致的界面,并且系统能够很好根据不同的屏幕配置来适应操作栏的外观。你能够用ActionBar的对象的API来控制操作栏的行为和可见性,这些API被添加在Android3.0(API 级别 11)中。
      Action bar的主要目的是:
        1.  提供一个用于识别应用程序的标示和用户的位置的专用空间。
         这个空间的左边是应用的图标或logo,以及Activity的标题。但是,如果是像当前选择的标签这样的标识当前View对象的导航标签,你可以选择删除Activity的标题。
        2.  在不同的应用程序之间提供一致的导航和视觉体验。
        Action bar提供了用于Fragment间切换的内置导航标签。它还提供了一个用于替换导航模式或优化当前视觉效果(如按照不同条件排序的列表)的下拉列表。
        3.  突出Activity的关键操作(如“搜索”、“创建”、“共享”等),并且在可预见的方法内给用户提供快捷的访问。
       对于关键的用户操作,你能够通过把选项菜单项作为操作项直接放到操作栏中,从而提供快捷的访问。操作项目还能提供一个操作窗口,这个窗口给更直接的操作行为提供一个嵌入的窗口部件。没有改进成操作项的菜单项在溢出菜单中还是有效的,用户既可以使用设备上的菜单按钮(设备上有按钮的时候),也可以使用操作栏中的溢出菜单按钮(当设备上不包含菜单按钮时)来显示这些操作项目。


下面上一个简单ActionBar的代码
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.Window;
import android.widget.Button;
import android.widget.Toast;

public class FirstActionBarActivity extends Activity
{
	private Button hideShowActionBar;
    
	@Override
	protected void onCreate(Bundle savedInstanceState)
	{
		super.onCreate(savedInstanceState);
		getWindow().requestFeature(Window.FEATURE_ACTION_BAR);
		setContentView(R.layout.activity_first_action_bar);
		hideShowActionBar = (Button) findViewById(R.id.button_hide_show_actionbar);
	
	}

	public void onClick_HideShowActionBar(View view)
	{
		if (getActionBar() == null)
			return;
		if (getActionBar().isShowing()){
			getActionBar().hide();
			hideShowActionBar.setText("显示ActionBar");
		}else{
			getActionBar().show();
			hideShowActionBar.setText("隐藏ActionBar");
		}
	}

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

	@Override
	public boolean onOptionsItemSelected(MenuItem item)  
	{
		Toast.makeText(this, item.getTitle(), Toast.LENGTH_LONG).show();
		return super.onOptionsItemSelected(item);
	}

}


layout : activity_first_action_bar.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <Button
        android:id="@+id/button_hide_show_actionbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="onClick_HideShowActionBar"
        android:text="隐藏ActionBar" />

</LinearLayout>


menu : activity_first_action_bar.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >

    <item
        android:id="@+id/menu_save"
        android:icon="@drawable/save"
        android:showAsAction="ifRoom|withText"
        android:title="保存"/>
    <item
        android:id="@+id/menu_open"
        android:icon="@drawable/open"
        android:showAsAction="ifRoom"
        android:title="打开"/>
    <item
        android:id="@+id/menu_search"
        android:icon="@drawable/search"
        android:showAsAction="always"
        android:title="保存"/>
   
</menu>

该例子会在附件中有源代码。

介绍一个item中的android:showAsAction选项:
这个属性可接受的值有:
  1、always:这个值会使菜单项一直显示在Action Bar上。
  2、ifRoom:如果有足够的空间,这个值会使菜单项显示在Action Bar上。
  3、never:这个值使菜单项永远都不出现在Action Bar上。
  4、withText:这个值使菜单项和它的图标,菜单文本一起显示。
    android:showAsAction="always|collapseActionView表示可扩展


AndroidManifest.xml中<activity中配置 android:uiOptions="splitActionBarWhenNarrow"
会将ActionBar放到底下的界面中







分享到:
评论

相关推荐

    【Android进阶】(5)ActionBar详解

    一、ActionBar简介 ActionBar是Android 3.0(API Level 11)引入的一个特性,旨在提升应用的用户体验,提供一个统一的导航和操作界面。它通常包含应用的logo、标题、菜单项和可扩展的操作空间。在Android 4.0(API ...

    Android--ActionBar

    ### 一、ActionBar简介 ActionBar是Android 3.0(API Level 11)及以上版本中默认包含的一个组件,它为用户提供了一个直观的界面来执行常见的操作,如返回、搜索、设置等。ActionBar不仅提供了一个统一的外观和感觉...

    actionbar Android

    ActionBar简介 - **功能**:ActionBar通常包含应用的Logo或Title,可操作的菜单项(如搜索、分享、设置等),以及用于导航的选项(如抽屉导航或Tab导航)。 - **设计指南**:遵循Material Design规范,Action Bar被...

    ActionBar代码

    一、ActionBar简介 ActionBar是Android 3.0(API级别11)引入的一个UI元素,旨在为用户提供一致且易于使用的界面。它通常包含应用图标、标题、操作按钮(如菜单项)和可选的下拉导航菜单。通过使用ActionBar,开发者...

    Android ActionBar

    #### 一、ActionBar简介与作用 **ActionBar** 在Android开发中扮演着重要的角色,它位于Activity的顶部,主要功能包括显示Activity的标题、图标、操作按钮等,并可以集成一些用于交互的视图。通过合理地利用...

    【Android UI设计与开发】顶部标题栏 ActionBar 一至四全集

    #### 一、ActionBar简介及基本概念 ActionBar作为Android应用界面中的一个重要组件,主要用于展示应用的品牌标识、提供主要的导航功能以及其他常见操作的访问入口。它通常位于屏幕的顶部,是用户与应用交互的重要...

    完整的ActionBar使用方法(兼容android2.3)

    **一、ActionBar简介** ActionBar是Android界面设计指南推荐的组件之一,它位于屏幕顶部,通常包含以下元素: 1. **应用图标**:显示应用程序的标识。 2. **动作按钮**:用于展示常用操作,可以是文字或图标。 3. ...

    安卓ActionBarSherlock

    ActionBar简介** 在Android 3.0(API级别11)引入的ActionBar是应用界面的重要组成部分,它提供了应用的品牌标识、操作选项和导航。在ActionBar中,用户可以找到应用的标题、菜单项、搜索框、下拉列表等元素,从而...

    CActionBar1

    **一、ActionBar简介** ActionBar是在Android 3.0(API级别11)引入的,用于替代传统标题栏。它的主要功能包括: 1. 显示应用的标识或标题。 2. 提供菜单项,用于触发各种操作。 3. 支持导航模式,如Tab切换。 4. ...

    Pro android 4

    - **ActionBar简介**:介绍ActionBar的功能和用途,它是Android应用顶部栏的一种形式。 - **ActionBar的组成部分**:分析ActionBar中各个部分的作用,如标题、菜单等。 - **使用ActionBar**:指导如何在应用中启用并...

    Pro Android 4 英文原版

    - **ActionBar简介**:介绍ActionBar的作用和组成元素。 - **自定义ActionBar**:讲解如何定制ActionBar以匹配应用的设计风格。 11. **第11章:高级调试与分析** - **调试技巧**:分享一些高效的调试技巧。 - *...

    Android开发入门书籍

    - ActionBar简介 - 设置操作栏 - 动作按钮与上下文菜单 **3.3 片段(Chapter 28: Fragments)** - **知识点:** - Fragment概述 - 生命周期与回调方法 - Fragment事务管理 **3.4 处理平台变更(Chapter 29:...

    ActionBarEx:高拓展高自定义性ActionBar,完美替代Android系统默认

    项目简介 为什么要写一个ActionBar?官方的和网上开源的那么多。 第一,先说说官方的。官方的在不同系统上的风格并不统一,自定义项太少,不能满足开发需求,所以才涌现了这么多的开源项目。 第二,网上开源的。网上...

    actionBarTab

    一、`ActionBar`简介 `ActionBar`是Android 3.0(API Level 11)引入的一个设计模式,旨在提高应用的可用性和一致性。它提供了一个统一的界面来展示应用的品牌、当前上下文和关键操作。`ActionBar`可以包含以下部分...

    CActionBar

    `ActionBar`简介 `ActionBar`是Android 3.0(API级别11)引入的一个功能强大的组件,旨在提高应用的导航和用户交互体验。它通常包含以下几个部分: - 应用图标:展示应用的标识。 - 标题/副标题:显示当前活动或...

    ActionBarSherlock的NAVIGATION_MODE_LIST模式

    **一、ActionBarSherlock简介** ActionBarSherlock是一个兼容库,旨在为所有Android版本提供Action Bar支持。它通过一个统一的API,使得开发者可以轻松地在低版本的Android设备上实现Action Bar特性,如选项菜单、...

    GlassActionBar.zip

    首先,我们来看"JavaApk源码说明.txt",这个文件通常包含了源码的简介和使用指导。它可能涵盖了如何导入项目、主要类的介绍以及需要注意的事项。源码的作者可能没有逐一验证所有功能,这意味着开发者在使用时可能...

    android-support-v7.jar

    一、`android-support-v7-appcompat`简介 `android-support-v7-appcompat`库是Android Support Library系列的一部分,主要目的是提供对Android API Level 14及以下版本的兼容性。此库包含了许多Android的V7组件,如...

    基于Android平台的菜谱实现.docx

    ActionBar actionBar = getActionBar(); actionBar.setDisplayHomeAsUpEnabled(true); actionBar.setDisplayShowHomeEnabled(true); actionBar.hide(); actionBar.show(); gallery = (MyMirrorGallery) ...

Global site tag (gtag.js) - Google Analytics