`

Android 应用程序窗体显示状态操作(requestWindowFeature()的应用)

 
阅读更多

我们在开发程序是经常会需要软件全屏显示、自定义标题(使用按钮等控件)和其他的需求,今天这一讲就是如何控制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://www.cnblogs.com/salam/archive/2010/11/30/1892143.html

  http://www.cnblogs.com/abinxm/archive/2011/11/15/2249346.html

分享到:
评论

相关推荐

    android应用程序窗体显示状态操作

    本文将深入探讨`requestWindowFeature()` 的应用及其在Android应用程序窗体显示状态操作中的作用。 首先,我们需要理解Android窗口系统的基本概念。每个Android应用都运行在一个Activity上,而Activity则承载了一个...

    requestWindowFeature

    `Window` 类的实现包括了`PhoneWindow` 和`DecorView` 等组件,它们共同协作构建出Android应用的视觉层次。`PhoneWindow` 是`Activity` 默认使用的`Window` 类,它负责处理`requestWindowFeature` 请求,并将这些...

    Android 中 requestWindowFeature()的应用

    在Android应用开发中,`requestWindowFeature()`是一个关键的方法,用于开启或关闭窗口的各种特性,以便根据需求定制应用程序的界面表现。这个方法主要用于Activity的窗口管理,它允许开发者在Activity启动之前设定...

    requestWindowFeature对title的设置

    总之,`requestWindowFeature`是Android开发中控制Activity窗口特性的关键方法,通过它可以实现标题栏的显示与隐藏、全屏模式以及其他窗口功能的启用。正确使用该方法,可以有效地定制Activity的外观,提升用户体验...

    Android蓝牙聊天示例应用程序使用.pdf

    首先,我们需要了解在Android应用中使用蓝牙功能的基本配置。在`AndroidManifest.xml`文件中,必须声明相应的权限才能使用蓝牙。在这个例子中,我们看到有以下两行权限声明: ```xml &lt;uses-permission android:name...

    Android App 隐藏显示标题栏、状态栏、导航栏

    在Android应用开发中,隐藏或显示标题栏、状态栏以及导航栏是常见的需求,这有助于创建沉浸式用户体验或者根据设计需求调整界面布局。本篇将深入探讨如何在Android中实现这些功能。 首先,我们来讨论如何隐藏和显示...

    Android隐藏状态栏和标题栏,相当于全屏效果

    Android 操作系统中,状态栏和标题栏是默认情况下显示的,但是有时候,我们需要隐藏它们以实现全屏效果。隐藏状态栏和标题栏可以通过两种方式来实现:使用预定义样式和编程方式。 使用预定义样式隐藏标题栏和状态栏...

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

    在传统的Android应用中,标题栏通常包含应用程序的图标、应用名称或操作菜单。在Xamarin中,我们可以通过修改主题(Theme)来控制标题栏的显示与否。Android的主题是在`res/values/styles.xml`文件中定义的。 步骤1...

    Android 标题、状态栏的隐藏

    这两种元素是Android应用界面的重要组成部分,它们可以显示应用的标题、时间、电池状态等信息。但在某些场景下,如观看视频、浏览图片时,隐藏这些元素可以使屏幕空间得到更充分的利用。 #### 二、标题栏的隐藏 ...

    分享Android平板电脑上开发应用程序不能全屏显示的问题解决

    在Android平台上进行应用开发时,有时会遇到应用程序无法在平板电脑上全屏显示的问题,这通常是由于设备的屏幕尺寸适配不当或者系统默认设置导致的。本文将详细讲解如何解决这个问题,以及提供相关的代码示例。 ...

    基于android环境的俄罗斯方块.pdf

    Eclipse是一个集成开发环境(IDE),在本文件中提到与Android开发相关,其实在Android开发早期版本中常与Android Development Tools(ADT)插件一起使用,用于编写、编译和调试Android应用代码。Google是美国的科技...

    Android五种隐藏状态栏和标题栏的方法

    Android五种隐藏状态栏和标题栏的方法是Android应用程序中常用的技术,通过隐藏状态栏和标题栏,可以使应用程序的界面更加简洁美观。下面将详细介绍五种隐藏状态栏和标题栏的方法。 方法一:使用 ...

    Android动画隐藏标题栏全屏

    在传统的Android应用中,标题栏(ActionBar或Toolbar)位于界面顶部,显示应用的图标、标题以及一些操作按钮。为了隐藏标题栏,开发者可以使用以下几种方法: 1. **XML布局中设置**:在布局文件中,可以为根视图...

    Android 设置应用全屏的两种解决方法

    本篇文章将详细介绍两种实现Android应用全屏显示的方法:一种是通过代码动态设置,另一种是在应用程序的配置文件中静态配置。 **一、在代码中设置** 在代码中设置全屏通常在`Activity`的`onCreate()`方法中完成。...

    Android 关于WebView一些注意点

    - `@android:style/Theme.NoTitleBar.Fullscreen`:不显示应用程序标题栏,并全屏显示。 - `@android:style/Theme.Light`:背景为白色。 - `@android:style/Theme.Light.NoTitleBar`:白色背景并无标题栏。 - `@...

    透明与窗体的设置

    另外,如果仅需将Activity显示为默认的Dialog,可以简化配置,即只需设置`android:theme="@android:style/Theme.Dialog"`或调用`setTheme(android.R.style.Theme_Dialog)`。 ##### 其他创建Dialog的方法 - 使用`...

    Android中Action Bar的使用

    在Android应用开发中,Action Bar是一个非常重要的组件,它位于应用程序界面的顶部,提供了一种标准的方式来展示应用程序的标识、主要的操作以及一个可选的下拉菜单,通常用于导航。本篇文章将深入探讨如何在Android...

    Android 去掉状态栏的方法汇总

    在实际的应用程序开发中,我们有时需要把 Activity 设置成全屏显示,一般情况下,可以通过两种方式来设置全屏显示效果: 其一,通过在代码中可以设置, 其二,通过manifest配置文件来设置全屏。 其一:在代码...

Global site tag (gtag.js) - Google Analytics