继承AppCompatActivity和Activity的Activity隐藏标题栏的区别

问题
在去掉标题栏的时候要分别是继承的AppCompatActivity,还是继承的Activity,两种是不同的方式来隐藏标题栏,针对不同的方式来隐藏不同的标题栏。

继承Activity的时候如何隐藏标题栏?

解决办法:

(1).在代码里实现

requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏 

此行代码要写在setContentView()前面才会起到作用。

(2)在清单文件(manifest.xml)里面实现

<application android:icon="@drawable/icon"   
        android:label="@string/app_name"   
        android:theme="@android:style/Theme.NoTitleBar">  

这样用可以将整个应用设置成无标题栏,如果只需要在一个Activity设置成一个无标题栏的形式,只要把上面的第三行代码写到某一个Activity里面就可以了。

(3)在style.xml文件里定义

<?xml version="1.0" encoding="UTF-8" ?>  
<resources>  
    <style name="notitle">  
        <item name="android:windowNoTitle">true</item>  
    </style>   
</resources>  

然后面manifest.xml中引用就可以了。

<application android:icon="@drawable/icon"   
        android:label="@string/app_name"   
        android:theme="@style/notitle">  

以上就是继承Activity时候实现隐藏标题栏的不同方法,可以选择不同的方式实现。

问题

继承AppCompatActivity的时候如何隐藏标题栏?

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

public class MainActivity extends AppCompatActivity {   
      @Override    
      protected void onCreate(Bundle savedInstanceState) {        
            super.onCreate(savedInstanceState);        
            requestWindowFeature(Window.FEATURE_NO_TITLE); //无效   
            setContentView(R.layout.activity_main);   
      }
}

在代码中不能实现我们的要求,那么就要换另外一个途径,现在去尝试在AndroidManifest.xml将主题改为@android:style/Theme.NoTitleBar

<application    
   android:icon="@mipmap/ic_launcher"    
   android:label="@string/app_name"    
   android:theme="@android:style/Theme.NoTitleBar"//运行出错
>

在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中的一个,即可隐藏标题栏

<application    
   android:icon="@mipmap/ic_launcher"    
   android:label="@string/app_name"    
   android:theme="@style/Theme.AppCompat.Light.NoActionBar"//成功隐藏标题栏
>

以上就是所有的关于隐藏标题栏的全部内容,其实不难看出无论是继承AppCompatActivity,还是继承的Activity,其实都是相同的方式实现的。

更多资源源码下载:
不一样的RecyclerView优雅实现复杂列表布局
android自定义视频播放器
MediaPlayer和SurfaceView的结合使用
FloatingActionButton的使用
多层Fragment与ViewPager结合使用

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DT从零到壹

您的鼓励是我创作最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值