我们在开发程序是经常会需要软件全屏显示、自定义标题(使用按钮等控件)和其他的需求,如何控制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全屏显示
分享到:
相关推荐
本文将深入探讨`requestWindowFeature()` 的应用及其在Android应用程序窗体显示状态操作中的作用。 首先,我们需要理解Android窗口系统的基本概念。每个Android应用都运行在一个Activity上,而Activity则承载了一个...
`Window` 类的实现包括了`PhoneWindow` 和`DecorView` 等组件,它们共同协作构建出Android应用的视觉层次。`PhoneWindow` 是`Activity` 默认使用的`Window` 类,它负责处理`requestWindowFeature` 请求,并将这些...
在Android应用开发中,`requestWindowFeature()`是一个关键的方法,用于开启或关闭窗口的各种特性,以便根据需求定制应用程序的界面表现。这个方法主要用于Activity的窗口管理,它允许开发者在Activity启动之前设定...
总之,`requestWindowFeature`是Android开发中控制Activity窗口特性的关键方法,通过它可以实现标题栏的显示与隐藏、全屏模式以及其他窗口功能的启用。正确使用该方法,可以有效地定制Activity的外观,提升用户体验...
首先,我们需要了解在Android应用中使用蓝牙功能的基本配置。在`AndroidManifest.xml`文件中,必须声明相应的权限才能使用蓝牙。在这个例子中,我们看到有以下两行权限声明: ```xml <uses-permission android:name...
在Android应用开发中,隐藏或显示标题栏、状态栏以及导航栏是常见的需求,这有助于创建沉浸式用户体验或者根据设计需求调整界面布局。本篇将深入探讨如何在Android中实现这些功能。 首先,我们来讨论如何隐藏和显示...
Android 操作系统中,状态栏和标题栏是默认情况下显示的,但是有时候,我们需要隐藏它们以实现全屏效果。隐藏状态栏和标题栏可以通过两种方式来实现:使用预定义样式和编程方式。 使用预定义样式隐藏标题栏和状态栏...
在传统的Android应用中,标题栏通常包含应用程序的图标、应用名称或操作菜单。在Xamarin中,我们可以通过修改主题(Theme)来控制标题栏的显示与否。Android的主题是在`res/values/styles.xml`文件中定义的。 步骤1...
这些概念对于创建用户友好且性能优良的Android应用程序至关重要。 首先,让我们详细讨论如何在Android模拟器中改变屏幕方向。Android设备支持横屏和竖屏两种模式,开发者需要确保应用在不同方向下都能正常运行。在...
根据给定的信息,我们可以从Java和Android学习笔记中...理解并掌握这些内容对于成为一名合格的Java开发者和Android应用开发者至关重要。通过不断实践和深入研究,可以更好地提高编程技能并在实际项目中应用所学知识。
以上知识点覆盖了从基础的Android应用设置到高级的主题如安全性和自定义权限的处理,以及在Android开发中常见的问题和解决办法。这些内容不仅对初学者具有指导意义,而且对于经验丰富的开发者也提供了很好的复习和...
这两种元素是Android应用界面的重要组成部分,它们可以显示应用的标题、时间、电池状态等信息。但在某些场景下,如观看视频、浏览图片时,隐藏这些元素可以使屏幕空间得到更充分的利用。 #### 二、标题栏的隐藏 ...
在Android平台上进行应用开发时,有时会遇到应用程序无法在平板电脑上全屏显示的问题,这通常是由于设备的屏幕尺寸适配不当或者系统默认设置导致的。本文将详细讲解如何解决这个问题,以及提供相关的代码示例。 ...
Eclipse是一个集成开发环境(IDE),在本文件中提到与Android开发相关,其实在Android开发早期版本中常与Android Development Tools(ADT)插件一起使用,用于编写、编译和调试Android应用代码。Google是美国的科技...
Android五种隐藏状态栏和标题栏的方法是Android应用程序中常用的技术,通过隐藏状态栏和标题栏,可以使应用程序的界面更加简洁美观。下面将详细介绍五种隐藏状态栏和标题栏的方法。 方法一:使用 ...
在传统的Android应用中,标题栏(ActionBar或Toolbar)位于界面顶部,显示应用的图标、标题以及一些操作按钮。为了隐藏标题栏,开发者可以使用以下几种方法: 1. **XML布局中设置**:在布局文件中,可以为根视图...
从给定的文件信息中,我们可以提炼出一系列与Android开发相关的知识点,主要涵盖了应用结构、布局文件、Activity生命周期以及Intent的...通过理解和实践这些概念,开发者可以构建功能丰富且交互良好的Android应用程序。
本篇文章将详细介绍两种实现Android应用全屏显示的方法:一种是通过代码动态设置,另一种是在应用程序的配置文件中静态配置。 **一、在代码中设置** 在代码中设置全屏通常在`Activity`的`onCreate()`方法中完成。...