`
wxlgzxx_1988
  • 浏览: 67819 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

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全屏显示

分享到:
评论

相关推荐

    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设备支持横屏和竖屏两种模式,开发者需要确保应用在不同方向下都能正常运行。在...

    java学习细节 android学习笔记

    根据给定的信息,我们可以从Java和Android学习笔记中...理解并掌握这些内容对于成为一名合格的Java开发者和Android应用开发者至关重要。通过不断实践和深入研究,可以更好地提高编程技能并在实际项目中应用所学知识。

    android笔记

    以上知识点覆盖了从基础的Android应用设置到高级的主题如安全性和自定义权限的处理,以及在Android开发中常见的问题和解决办法。这些内容不仅对初学者具有指导意义,而且对于经验丰富的开发者也提供了很好的复习和...

    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生命周期以及Intent的...通过理解和实践这些概念,开发者可以构建功能丰富且交互良好的Android应用程序。

    【原创】Android锁定横竖屏、splash,全屏、去除标题的方法

    在Android应用开发中,屏幕方向控制、启动页(Splash Screen)设计、全屏显示以及去除标题栏的操作是常见的需求,这些都可以提升用户体验并使应用更具专业性。下面将详细讲解如何实现这些功能。 1. **锁定横竖屏** ...

Global site tag (gtag.js) - Google Analytics