`

Android自定义title bar(标题栏)

 
阅读更多

我们在开发程序是经常会需要软件全屏显示、自定义标题(使用按钮等控件)和其他的需求,今天这一讲就是如何控制Android应用程序的窗体显示.

  首先介绍一个重要方法那就是requestWindowFeature(featrueId),它的功能是启用窗体的扩展特性。参数是Window类中定义的常量。

一、枚举常量

1.DEFAULT_FEATURES:系统默认状态,一般不需要指定

2.FEATURE_CONTEXT_MENU:启用ContextMenu,默认该项已启用,一般无需指定

3.FEATURE_CUSTOM_TITLE:自定义标题。当需要自定义标题时必须指定。如:标题是一个按钮时

4.FEATURE_INDETERMINATE_PROGRESS:不确定的进度

5.FEATURE_LEFT_ICON:标题栏左侧的图标

6.FEATURE_NO_TITLE:吴标题

7.FEATURE_OPTIONS_PANEL:启用“选项面板”功能,默认已启用。

8.FEATURE_PROGRESS:进度指示器功能

9.FEATURE_RIGHT_ICON:标题栏右侧的图标

 

二、详解

默认显示状态

图1默认

1.FEATURE_CUSTOM_TITLE详解

this.requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
        setContentView(R.layout.main);

 

图2 无标题

 

这是因为没设置Featrue

在上面代码后加:getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title); 

 

图3自定义标题

自定义标题完成,它是一个xml文件布局

title.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content" >
  
  <ImageView android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:src="@drawable/icon"/>
   <TextView android:id="@+id/text"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:layout_alignParentLeft="true"  
        android:text="文本" />  
  
</LinearLayout>

3.FEATURE_INDETERMINATE_PROGRESS详解

表示一个进程正在运行

    图4标题进度条显示

实现代码

1.progress.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content">
  <ProgressBar android:id="@+id/progress"

      android:layout_width="wrap_content"

      android:layout_height="wrap_content"   

      android:layout_gravity="center_vertical"
      style="?android:attr/progressBarStyleSmallTitle">

</ProgressBar>
</LinearLayout>

 

2.Java代码

this.requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
  setContentView(R.layout.main);


  getWindow().setFeatureInt(Window.FEATURE_INDETERMINATE_PROGRESS, R.layout.progress);
  setProgressBarIndeterminateVisibility(true);

  

3.FEATURE_LEFT_ICON详解

左侧显示图标

图5

 

实现代码


  this.requestWindowFeature(Window.FEATURE_LEFT_ICON);
  setContentView(R.layout.main);
  
  getWindow().setFeatureDrawableResource(Window.FEATURE_LEFT_ICON, R.drawable.icon);

 

4.FEATURE_NO_TITLE详解

 可用于全屏显示

 

实现代码

this.requestWindowFeature(Window.FEATURE_NO_TITLE);
  setContentView(R.layout.main);
 
  getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

 

图6全屏显示

 

转载至:http://blog.csdn.net/fulianwu/article/details/6911327

分享到:
评论

相关推荐

    Android编程自定义title bar(标题栏)示例

    在Android应用开发中,自定义Title Bar(或称为ActionBar,因为从Android 3.0(API Level 11)开始,Title Bar被ActionBar所取代,但在这里我们讨论的是早期版本中的Title Bar)是一种常见的需求,这有助于提高应用...

    Android项目中自定义顶部标题栏

    下面我们将深入探讨如何在Android项目中实现自定义标题栏,包括定义标题栏布局、自定义TitleActivity以及实现在标题栏下内容的切换。 首先,**定义标题栏布局**是创建自定义标题栏的第一步。这通常涉及创建一个XML...

    Android自定义标题栏(并加入返回按钮)demo

    在Android应用开发中,自定义标题栏是一种常见的需求,它能提供更加个性化和与应用风格一致的用户体验。本文将深入探讨如何在Android中创建一个自定义的标题栏,并且添加一个返回按钮。我们将通过以下几个步骤来实现...

    Android自定义标题栏

    在Android应用开发中,自定义标题栏(也称为Action Bar或Toolbar)是常见的需求,它可以帮助我们实现更个性化和功能丰富的界面设计。Android Studio作为官方推荐的集成开发环境,提供了强大的支持来帮助开发者轻松...

    Android 灵活的自定义顶部标题栏

    在Android应用开发中,自定义标题栏是一种常见的需求,它能帮助我们打造出独特且符合应用风格的用户界面。本文将详细讲解如何实现一个灵活的自定义顶部标题栏,支持通过传入不同`type`值来控制标题栏上的控件显示与...

    android自定义标题栏(已封装)

    本文将深入探讨如何在Android中创建并封装一个自定义标题栏,参考了链接中的博客文章《Android自定义标题栏(已封装)》。 首先,我们需要了解Android系统自带的Title Bar(在API 21及以上版本被称为ToolBar),它...

    Android 简化 自定义标题栏

    在Android应用开发中,自定义标题栏是一种常见的需求,它能帮助我们打造出具有独特风格的用户界面。"Android简化自定义标题栏"这个主题旨在帮助开发者快速、高效地实现这一功能,无需过于复杂的代码和设计。下面将...

    Android复合控件学习之自定义标题栏

    在Android应用开发中,自定义标题栏是一种常见的需求,它能帮助我们打造出具有独特风格的用户界面。本文将深入探讨如何在Android中实现自定义标题栏,并涉及自定义属性、接口回调等关键知识点。 首先,我们需要理解...

    Android窗体自定义标题栏

    在Android应用开发中,标题栏(Title Bar)是界面设计中的一个重要组成部分,它通常显示应用程序的名称、操作按钮以及提供返回、前进等导航功能。随着Android版本的更新,标题栏的设计和实现方式也在不断变化,从...

    Android中BaseActivity自定义标题栏

    在Android开发中,自定义标题栏是一个常见的需求,特别是在需要高度定制化UI或者与系统默认样式不一致的情况下。本文将详细介绍如何在Android中基于BaseActivity自定义标题栏,以满足特定的设计需求,如标题居中、...

    Android-CustomTitle自定义toolsbar编写自己想要的标题栏

    本教程将深入讲解如何使用Android的CustomTitle来创建自己的工具栏,并构建出独一无二的标题栏。 首先,我们需要理解`Toolbar`的基本概念。`Toolbar`是Android 5.0(Lollipop)引入的一个组件,它是`ActionBar`的...

    Xamarin开发Android不显示标题栏,隐藏title

    在Xamarin开发Android应用时,有时我们希望去除应用程序界面中的标题栏(title bar),以提供更简洁、沉浸式的用户体验。本教程将详细讲解如何在Xamarin.Android项目中实现这一目标,以及如何通过Visual Studio 2017...

    Android底部tab栏与标题栏结合

    本教程将详细介绍如何在Android项目中实现底部tab栏与标题栏的结合。 首先,我们需要在布局XML文件中创建底部导航栏。这可以通过添加`BottomNavigationView`组件来完成。例如: ```xml &lt;com.google.android....

    android标题栏自定义标签

    在Android开发中,自定义标题栏是提升应用用户体验和界面美观度的重要手段。"android标题栏自定义标签"这一主题,主要涉及如何在Android应用的标题栏中添加和定制各种元素,如文字、图片,以及实现沉浸式显示效果。...

    Android实现自定义标题栏的方法

    总结一下,实现Android自定义标题栏的步骤如下: 1. 创建一个XML布局文件(如`layout_title_bar.xml`),定义标题栏的视图结构。 2. 在需要使用标题栏的布局文件中,通过`&lt;include&gt;`标签引入自定义标题栏。 3. 在...

    Andoid自定义标题栏示例

    在Android应用开发中,...总结起来,Android自定义标题栏涉及到`Toolbar`组件的使用,包括设置图标、文字、背景颜色、高度和菜单。通过灵活地调整这些属性,开发者可以根据需求创建出符合应用风格的个性化标题栏。

    android自定义View—顶部导航栏

    标题中的"android自定义View—顶部导航栏"正是指这个过程,它旨在创建一个可重用的组件,用于在多个Activity之间提供一致的导航体验。 首先,我们从基础开始,理解Android中的自定义View。自定义View是扩展系统提供...

Global site tag (gtag.js) - Google Analytics