requestWindowFeature()隐藏标题栏无效

来源:互联网 发布:视频剪切软件绿色版 编辑:程序博客网 时间:2024/06/05 07:18

requestWindowFeature(Window.FEATURE_NO_TITLE); 隐藏标题栏,该语句需要在setContentView()方法前被执行,但是在测试时,发现该功能没有起作用。
代码如下:

public class FirstActivity extends ActionBarActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        requestWindowFeature(Window.FEATURE_NO_TITLE);        setContentView(R.layout.activity_first);    }    //省略部分代码...... }

之后修改FirstActivity的继承类,由 ActionBarActivity 修改为 Activity ,该代码就起作用了。
为什么会这样呢?
查找ActionBarActivity的API 及 ActionBar的API,是这样讲的
ActionBarActivity :
这里写图片描述
ActionBar:
这里写图片描述
这里写图片描述
由于ActionBar是在API 11之后才有的,因此ActionBarActivity 是为API 7 及更高版本提供ActionBar的实现。

如果想实现标题栏隐藏,可以把requestWindowFeature(Window.FEATURE_NO_TITLE);放在调用super.onCreate()之前或者使用getSupportActionBar().hide();方法,代码参考如下:

public class FirstActivity extends ActionBarActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        requestWindowFeature(Window.FEATURE_NO_TITLE);        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_first);    }    //省略部分代码...... }

或者

public class FirstActivity extends ActionBarActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        //requestWindowFeature(Window.FEATURE_NO_TITLE);        super.onCreate(savedInstanceState);        getSupportActionBar().hide();        setContentView(R.layout.activity_first);    }    //省略部分代码...... }
0 0