Android之无法隐藏标题栏 继承AppCompatActivity的Activity无法隐藏标题栏解决方案

来源:互联网 发布:nginx 绝对路径配置 编辑:程序博客网 时间:2024/06/05 14:22

问题描述:

继承了AppCompatActivity的Activity无法通过调用requestWindowFeature(Window.FEATURE_NO_TITLE)来隐藏标题栏。

[java] view plain copy
  1. public class MainActivity extends AppCompatActivity {     
  2.       @Override      
  3.       protected void onCreate(Bundle savedInstanceState) {          
  4.             super.onCreate(savedInstanceState);          
  5.             requestWindowFeature(Window.FEATURE_NO_TITLE); //无效果     
  6.             setContentView(R.layout.activity_main);     
  7.       }  
  8. }  

既然这条路走不通,我就在AndroidManifest.xml将主题改为@android:style/Theme.NoTitleBar

[java] view plain copy
  1. <application      
  2.    android:icon="@mipmap/ic_launcher"      
  3.    android:label="@string/app_name"      
  4.    android:theme="@android:style/Theme.NoTitleBar"//运行出错  
  5. >  

在Android Monitor中看到错误报告:You need to use a Theme.AppCompat theme (or descendant) with this activity.(你必须使用Theme.AppCompat主题或者其子类主题)

解决方案:

在AndroidManifest.xml中将主题更改为Theme.AppCompat.Light.NoActionBar、Theme.AppCompat.NoActionBar或Theme.AppCompat.DayNight.NoActionBar中的一个,即可隐藏标题栏

[java] view plain copy
  1. <application      
  2.    android:icon="@mipmap/ic_launcher"      
  3.    android:label="@string/app_name"      
  4.    android:theme="@style/Theme.AppCompat.Light.NoActionBar"//成功隐藏标题栏  
  5. >

感谢http://blog.csdn.net/lvshuchangyin/article/details/54922636


阅读全文
0 0
原创粉丝点击