Android的activity去除标题栏AndroidRuntimeException

移动开发 码拜 9年前 (2015-11-25) 1224次浏览
代码如下,(《第一行代码》中的)

 protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_main);
    }

其他代码没有改变。
但是为什么本人运行的时候却还是会报这样的错: android.util.AndroidRuntimeException: requestFeature() must be called before adding content
这明明就不应该出错的呀
本人用的是Android studio写的。模拟器是Android5.0.2的系统,这个有影响吗

解决方案:10分
初始化布局前  并不能去掉标题栏   或你也可以直接在activity配置那里配置有个属性叫noTitleBar貌似

requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_main);

这两个换个位置就好了

解决方案:10分
先 clean 下试试,代码没问题,Android studio本人不熟,可能是开发环境的问题,这个在 eclipse 上绝对没问题。
实在不行的话,那你就在manifest里面加 android:theme=”@android:style/Theme.Black.NoTitleBar” 这句试试,这句可以用在application中,也可以用在activity中,但是加了这句的话,你的代码里那句就不要加了。理论上来说,在manifest中加上这句比在代码中加这句速度要快。原因是系统会先跑manifest。
解决方案:10分
 ActionBarActivity 这个是带有actionBar的,有标题不能去掉标题
解决方案:10分
原因是ActionBarActivity是一个包含Title的Activity,当你super.onCreate(savedInstanceState);时实际相当于已经有一部分设置了Title,这个之后才去 requestWindowFeature(Window.FEATURE_NO_TITLE);,晚了!

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明Android的activity去除标题栏AndroidRuntimeException
喜欢 (0)
[1034331897@qq.com]
分享 (0)