关于安卓开发去掉标题栏

在安卓开发中,有一种常见的需求,就是去掉系统的标题栏,使用自定义的标题栏,所以会用到

requestWindowFeature(Window.FEATURE_NO_TITLE)语句,或者是那种需求,需要全屏的,用
getWindow().setFlags(
        WindowManager.LayoutParams.FLAG_FULLSCREEN,
        WindowManager.LayoutParams.FLAG_FULLSCREEN
);这种语句,这是常见的方式,当然还有
getSupportActionBar().hide();这种取标题的方法,这都不是重点,重点是requestWindowFeature(Window.FEATURE_NO_TITLE)语句,有时用的话会报错,原因之一就是把他放在了setContentView()语句之后了,另一种就放对了位置还是报错,runTime异常,从网上看,有的说是继承了Activity就好了,不要继承AppCompatActivity等其他类型类型activity,但是我发现我以前的项目就是继承AppCompatActivity这个种activity就可以,偏偏这个项目用不了?后来发现是我写的baseActivity继承于AppCompatActivity,在onCreat方法中已经使用了requestWindowFeature(Window.FEATURE_NO_TITLE)语句,然后其他activity继承于我的这个baseActivity,对于特殊的activity,我就会重写onCreat方法,再次使用了requestWindowFeature(Window.FEATURE_NO_TITLE)语句,所以报错了,只需要在baseActivity中去掉那条语句就好了,终于发现了问题,所以针对requestWindowFeature(Window.FEATURE_NO_TITLE)语句要注意,继承关系,当然具体的原因可以通过源码找到,这里不多说,有兴趣的可以查阅一下。
阅读更多
换一批

没有更多推荐了,返回首页