Android 应用程序窗体显示状态操作(requestWindowFeature()的应用)
我们在开发程序是经常会需要软件全屏显示、自定义标题(使用按钮等控件)和其他的需求, 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.FEATURE_CUSTOM_TITLE详解
this.requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.main);

这是因为没设置Featrue,在上面代码后加:getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title);

自定义标题完成,它是一个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详解,表示一个进程正在运行

实现代码
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详解,左侧显示图标

实现代码
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);

分享到:
相关推荐
在Android开发中,设置界面是应用中不可或缺的一部分,它为用户提供了一种自定义应用行为和配置的方式。本实例聚焦于如何设计一个精仿QQ风格的设置界面,这将涉及到多个关键知识点,包括布局管理、控件使用、数据...
在Android应用开发中,标题栏(Toolbar)是用户界面中的一个重要组成部分,它通常显示应用程序的名称、图标以及一些操作按钮。随着Android系统的发展,开发者有了更多自定义标题栏的自由度,以满足不同设计需求。本...
在Android开发中,Spinner是一个非常常用的组件,它用于在下拉菜单中展示一系列选项供用户选择。Spinner在很多场合下可以替代多个按钮或开关,提供更简洁的操作界面。本篇文章将详细讲解如何在Android中设置Spinner...
在Android应用开发中,自定义标题(Title)是一种常见的需求,它可以帮助我们为应用程序提供更加个性化和功能丰富的界面。自定义标题不仅可以改变默认的样式,还可以添加额外的功能按钮或者实现更复杂的交互效果。本...
在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序中加载和显示网页内容。有时候,我们可能希望去除WebView中的标题部分,以实现更自定义化的界面设计。本篇文章将详细探讨如何在Android的...
在Android开发中,自定义标题栏颜色是一项常见的需求,它能帮助开发者打造出具有独特风格的用户界面。本教程将详细讲解如何在Android应用中修改标题栏颜色,主要针对标题栏颜色的设置方法进行阐述。 首先,我们需要...
在Android应用开发中,标题栏(Toolbar)是用户界面中的重要组成部分,它为用户提供应用程序的标识、导航功能以及操作选项。本教程将详细介绍如何通过简单的封装实现一个适用于各种场景的通用标题栏。参考链接:...
在Xamarin.Android开发中,创建自定义标题栏是提升应用用户体验和界面个性化的重要步骤。Xamarin是一个强大的跨平台开发工具,允许开发者使用C#语言构建原生的iOS、Android和Windows应用程序。本教程将深入探讨如何...
总的来说,实现Android标题栏随着RecyclerView滚动背景渐变的技术涉及到Android的UI组件交互、滚动事件监听、颜色处理等多个方面,是一个综合性的Android开发技能。通过这样的实践,开发者不仅可以提升用户界面的...
本教程将深入探讨如何通过自定义View的方式实现Android开发中的标题统一管理。 首先,自定义标题栏需要创建一个新的View类,继承自Android的基础布局组件,如LinearLayout或RelativeLayout。这样可以让我们自由地...
【标题】: "Android开发-使用Android Studio开发的Android版新闻APP" 在移动应用开发领域,Android Studio作为Google官方推荐的集成开发环境(IDE),已经成为Android应用开发的标准工具。本项目是一个基于Android ...
这本书名为《Android开发实战经典》,由李兴华编著,是一本针对Android开发的实用教材。从标题和描述中,我们可以得知它是一本专注于Android平台开发的专业书籍,内容涵盖了从基础知识到实战技巧的全面介绍。该书...
在Android应用开发中,自定义标题栏(ActionBar或者Toolbar)是一项常见的需求,它可以让应用程序具有独特的界面风格,提升用户体验。Android系统默认提供了标题栏(ActionBar)功能,但往往无法满足开发者的所有...
在Android应用开发中,全屏显示以及去除标题栏可以极大地提升用户体验,特别是在游戏或沉浸式应用中。要实现这一效果,开发者需要对Android系统的基本布局和主题设置有深入理解。以下将详细介绍如何在Android应用中...
总结来说,Android开发中的日历和闹钟功能涉及到了系统API的调用、数据的增删改查以及定时任务的设定。通过`naozhongdemo`这个示例项目,开发者可以学习到如何在Android应用中集成这些功能,提升应用的实用性和用户...
标题和描述概述的知识点主要集中在Android开发环境的搭建上,涉及了从基本的软件需求到具体安装步骤的全过程。下面将对这些知识点进行详细的解析。 ### Android开发环境基础 #### Java环境配置 - **Java版本要求**...
在Android开发中,为了让应用的用户体验更加统一和美观,有时我们需要自定义状态栏的颜色,使其与应用的标题栏颜色保持一致。在iOS系统中,这种效果很常见,但早期的Android版本并不支持这一特性。不过,从Android ...
总之,自定义标题栏是Android开发中提升应用界面质量的重要手段。通过封装,我们可以将标题栏组件化,方便在多个项目中复用,同时也能更好地满足设计和功能需求。参考提供的博客文章和资源,你可以进一步学习和实践...
"CodeBlocks搭建Android开发调试环境" 本文将详细介绍使用CodeBlocks搭建Android开发调试环境的步骤,包括安装CodeBlocks、cygwin、toolchains、android-sdk和android-platform-tools,配置CodeBlocks编译器和调试...
在Android开发中,滑动标题(Sliding Title)是一种常见的用户界面设计,它提供了一种动态展示和隐藏标题的方式,增强了用户体验。这个“android滑动标题demo”是为开发者提供了一个实现滑动标题功能的实例,它实现...