Android标题栏仍然显示在设计视图中,尽管我在styles.xml中删除了它
我正在使用活动,因此我必须创建自己的工具栏并添加它。唯一的问题是,当前的默认标题栏并没有被删除,即使我相应地修改了我的styles.xml 这是我的档案: 它崩溃了 这是Android Studio的实际错误:Android标题栏仍然显示在设计视图中,尽管我在styles.xml中删除了它,android,xml,android-toolbar,Android,Xml,Android Toolbar,我正在使用活动,因此我必须创建自己的工具栏并添加它。唯一的问题是,当前的默认标题栏并没有被删除,即使我相应地修改了我的styles.xml 这是我的档案: 它崩溃了 这是Android Studio的实际错误: java.lang.RuntimeException: Unable to start activity ComponentInfo{benj.samplesapp/benj.samplesapp.ViewCars}: java.lang.IllegalStateException:
java.lang.RuntimeException: Unable to start activity ComponentInfo{benj.samplesapp/benj.samplesapp.ViewCars}: java.lang.IllegalStateException: This Activity already has an action bar supplied by the window decor. Do not request Window.FEATURE_SUPPORT_ACTION_BAR and set windowActionBar to false in your theme to use a Toolbar instead.
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2211)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
at android.app.ActivityThread.access$600(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
我的android清单:
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/Theme.AppCompat.Light">
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
如何删除旧样式?我认为问题在于,您定义了一个没有操作栏的样式,但从未将其应用于您的活动—实际上,在您的清单文件中,您正在将
@style/Theme.AppCompat.Light
应用于整个应用程序,这就是为什么您的活动会获得一个操作栏。因此,在清单文件中,将活动声明更改为
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:theme:"@style/AppTheme" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
并删除
this.requestWindowFeature(Window.FEATURE\u NO\u TITLE)代码>从您的ViewCars类中我认为问题在于您定义了一个没有操作栏的样式,但从未将其应用于您的活动。实际上,在您的清单文件中,您正在将@style/Theme.AppCompat.Light
应用于您的整个应用程序,这就是您的活动获得操作栏的原因。因此,在清单文件中,将活动声明更改为
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:theme:"@style/AppTheme" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
并删除this.requestWindowFeature(Window.FEATURE\u NO\u TITLE)代码>来自您的ViewCars类这是在模拟器中还是在设备上?嗯,我尝试在模拟器上运行它,但它不断崩溃该设备是模拟器上的S3。我是说布局设计器,而不是模拟器。无论如何,请发布您的堆栈跟踪。我已经更新了我的问题,请查看跟踪。这是在模拟器中还是在设备上?我正在尝试在模拟器上运行它,但它不断崩溃。该设备在模拟器上是S3。或者,我指的是布局设计器,而不是模拟器。不管怎样,请发布你的堆栈跟踪。我已经更新了我的问题,请查看跟踪。谢谢,我尝试了上面评论中提供的其他解决方案,它们都很有效-我对所有人都表示感谢,包括你自己。我只想得到这个答案,因为这也肯定会让其他人受益。谢谢,我尝试了上面评论中提供的其他解决方案,它们都很有效——我对所有人都表示赞赏,包括你自己。我只想得到这个答案,因为这也肯定会使其他人受益
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:theme:"@style/AppTheme" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>