You need to use a Theme.AppCompat theme (or descendant) with this activity.

【问题描述】

今天做了个界面想把该界面的ActionBar给去掉,网上看了下相关资料,就是在你要去掉的那个界面添加一句话

 android:theme="@android:style/Theme.NoTitleBar"

完整代码如下

      <activity
            android:name=".MainActivity"
            android:theme="@android:style/Theme.Light.NoTitleBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

当自己运行的时候去发现有错,如下所示

【解决方法】

网上搜索了下,大概的意思就是这样的

Activity继承自 android.support.v7.app.AppCompatActivity,而不是 android.app.Activity。

因为我新建的界面继承的是AppCompatActivity,如下

public class MainActivity extends AppCompatActivity

正是因为这个原因所以我运行的时候就会出错。所以我们只需要继承Activity即可,如果非要继承AppCompatActivity可采用如下的方法

即将AndroidManifest.xml文件中关于Activity的主题配置改成:

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

完整代码如下

 <activity
            android:name=".MainActivity"
            android:theme="@style/Theme.AppCompat.Light.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
  </activity>

【总结】

当我们新建一个项目的时候如果不是特殊要求的话我们尽量去继承Activity

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值