博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Android 入门学习篇】 1.标题栏隐藏
阅读量:5446 次
发布时间:2019-06-15

本文共 2626 字,大约阅读时间需要 8 分钟。

在很多Android的项目里面,隐藏标题栏与隐藏信息栏都是会经常用到的。

下面便是本菜鸟在学习过程中的一些领悟笔记。

 

一、只隐藏标题栏的效果图

实现该效果有两种做法:

1:在 public void onCreate(Bundle savedInstanceState)函数中添加代码

     this.requestWindowFeature(Window.FEATURE_NO_TITLE);

     这行代码必须添加在

     setContentView(R.layout.main);方法前,否则会在程序执行时报错

View Code
public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        this.requestWindowFeature(Window.FEATURE_NO_TITLE);        setContentView(R.layout.main);    }

 

2:在 AndroidManifest.xml 文件中 activity 节点中添加

     android:theme="@android:style/Theme.NoTitleBar"

View Code

 

二、隐藏信息栏的效果图

实现该效果的做法:

1:在 public void onCreate(Bundle savedInstanceState)函数中添加代码

this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSEEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

这行代码必须添加在

setContentView(R.layout.main);方法前,否则会在程序执行时报错

View Code
public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,          WindowManager.LayoutParams.FLAG_FULLSCREEN);        setContentView(R.layout.main);    }

 

三、隐藏标题栏跟信息栏的效果图

实现该效果的做法:

1:在 public void onCreate(Bundle savedInstanceState)函数中添加代码

this.requestWindowFeature(Window.FEATURE_NO_TITLE);

this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSEEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

代码必须添加在

setContentView(R.layout.main);方法前,否则会在程序执行时报错

View Code
public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        this.requestWindowFeature(Window.FEATURE_NO_TITLE);        this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,          WindowManager.LayoutParams.FLAG_FULLSCREEN);        setContentView(R.layout.main);    }

 

2:在 AndroidManifest.xml 文件中 activity 节点中添加

   android:theme="@android:style/Theme.NoTitleBar.Fullscreen"

View Code

 

 

在以上三种效果中,其中一、三列举了两个方式实现,虽然实现的最终效果是一样,但是在执行的过程中有着微小的差别。

在onCreate 函数中添加代码一部分,一直都强调必须在setContentView(R.layout.main);方法执行之前添加,requestWindowFeature、getWindow 两个方法是告诉系统在描述这个窗体时的属性设置,所以必须在窗体被描述出来前做好声明。

好了到了这里就引发出一个微小的差别了,当程序运行时,虽然窗体在没有被完全描述出来之前,其实这个窗体已经被打开了,那么只要机子运行比较卡的话,可以发现一个问题,程序在一开始运行时,标题栏跟信息栏是存在的,但是在窗体内容被整体描述出来的时候,标题栏或者信息栏才会被隐藏掉。

而第二种在AndroidManifest.xml文件中修改节点属性的操作则没出现该情况,可见程序在初始化运行时先读取了该配置文件。

 

 

注:以上所有观点均为笔者在自己的环境下实践结果,如有不同观点或者错误的描述,还请各位看官见谅,欢迎拍砖。

 

 

 

转载于:https://www.cnblogs.com/arvinlan/archive/2012/09/28/2707384.html

你可能感兴趣的文章
懒得写了,直接复制代码了。。。跨公司发料到订单和退料
查看>>
20145228 《信息安全系统设计基础》第六周学习总结 (1)
查看>>
【原创】Qt 使用ODBC driver 连接SQL Server
查看>>
题目+思路(一句话开脑洞)
查看>>
HTML5学习
查看>>
线下作业MySQL #20175201
查看>>
Seasar2:SAStruts:View(JSP)
查看>>
jira-6.0.1-x64下载地址
查看>>
PAT IO-03 整数均值
查看>>
ios下DatePicker获取时间的问题
查看>>
$_SERVER
查看>>
4 款消息队列软件产品大比拼
查看>>
TeX-换行换页与段落命令
查看>>
BZOJ2728: [HNOI2012]与非
查看>>
Apache Hadoop配置Kerberos指南
查看>>
C#比较时分秒大小,终止分钟默认加十分钟,解决跨天、跨月、跨年的情况
查看>>
回文数字判断
查看>>
kmp算法
查看>>
抛弃火狐……
查看>>
objective-c中是如何实现线程同步的?
查看>>