解决用android Studio开发不能去除标题栏的问题

原文 http://www.2cto.com/kf/201701/589964.html

之前在eclipse上进行开发的时候,要去除Activity的的默认标题栏,我习惯使用的方法是用下面这行代码:

requestWindowFeature(Window.FEATURE_NO_TITLE);

但是,最近打算学习android Studio,于是打算用studio来弄一个项目作为练手,结果在写splash界面的时候就差点弄出了个大乌龙,在这里记一下,免得以后再犯:

在去除Activiry标题栏的时候,使用了上述代码,但是运行时,结果如下:
这里写图片描述
在这里发现,虽然设置了去除标题栏,但实质上并没有起到什么效果。初时以为是模拟机的问题,然后用了真机测试,问题不变。断定问题出在代码上。可是代码一直这么写过来,应该不会有错的呀。于是从头检查代码。发现了问题所在:
这里写图片描述
如果有注意的话,这里的Activity类继承的是AppCompatActivity,这个是属于support v7附加包的类。而eclipse使用的则是v4包,继承的是Activity类。两者之间有什么不一样的地方,可以百度一下,这里不多说。下面是解决办法:
1.修改父类Acticity,将AppComPatActiviry替换为Activiry,问题解决

2.修改AndroidManiFest.xml文件,将< activity>中的Theme属性替换如下:

android:theme="@style/Theme.AppCompat.NoActionBar">

问题同样可以解决

3.更换requestWindowFeature(Window.FEATURE_NO_TITLE);代码为:

//v7包下去除标题栏代码:
getSupportActionBar().hide();   
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

以上三种办法,都可以好处理好android Studio下不能去除标题栏的问题。但注意的是尽管第一种与我们的习惯很接近(作为eclipse使用者而言),但这种方法却是一种将v7舍弃的方法,作为技术越来越新的学科,这种办法是不提倡的。因此,建议使用第二种或者第三种办法,同时也多了解一下v4包和v7包的同与不同,帮助实现更得心应手的开发。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值