163

Missing styles. Is the correct theme chosen for this layout? Use the Theme combo box above the layout to choose a different layout, or fix the theme style references. Failed to find style mapViewStyle in current theme.

I tried every solutions available to solve this problem but nothing seems to work. I have included library in the manifest file. I even created style is styles.xml, I have chosen Google Apis build target as well.

Can somebody please give me a solution?

here is my xml file:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/AppTheme"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >


 <com.google.android.maps.MapView
     android:id="@+id/themap"
     style="@style/mapViewStyle"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent"
     android:apiKey="here i have my key"
     android:clickable="true"
     android:enabled="true" />

  </RelativeLayout>   

Here is my manifest snippet:

  <uses-library android:name="com.google.android.maps" />

    <activity
        android:name=".MainActivity"
        android:label="@string/title_activity_main" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".Second" />

    <activity android:name=".Third"  android:theme="@android:style/Theme.Black"/>
  </application>

here is my style.xml file

<resources>
    <style name="mapViewStyle" parent="@android:style/Theme.Black">
    </style>
</resources>
4

21 回答 21

153

对于 Android Studio(或 IntelliJ IDEA),

如果您的项目中一切正常,并且您的布局中仍然出现错误,请尝试“使缓存无效并重新启动”。

在 Android Studio 重新创建缓存和索引时喝杯咖啡。

如何使缓存无效并重新启动

于 2014-08-21T08:22:48.260 回答
152

我遇到了同样的问题,发现它是图形布局编辑器顶部的主题下拉菜单。我从 Holo 更改为 Theme 并显示布局并且错误消失了。

于 2013-05-30T10:02:40.000 回答
14

我通常做的是以下内容: a Gradle Clean,RebuildSync all my Gradle files. 之后我restart Android Studio,我去:

Select Theme -> Project Themes -> AppTheme
于 2015-08-06T15:42:25.917 回答
10

这是因为您选择的不是项目的主题。接下来尝试做:

在此处输入图像描述

于 2016-08-09T07:06:54.733 回答
8

如果我们使用 Android Studio 创建太多项目,有时会出现渲染问题。即使创建一个空白活动,我们也会收到这样的渲染错误。请关闭并重新启动 Android Studio。如果问题仍然存在,您可以Android Studio 缓存失效和重启

希望这可以帮助。它的工作方式与经验法则相似,以防一切看起来都很好并且仍然存在错误,重新启动应用程序通常可以解决问题。

于 2016-01-03T09:34:37.943 回答
4

在我的情况下,当设计器中 Android 版本的默认设置设置为“预览 N”时,问题发生了。将 Android 版本更改为“23”,错误通知消失了。
编辑
并且不要忘记取消选中“自动选择最佳”。

于 2016-04-15T08:55:47.753 回答
2

我通过更改 build.gradles 中“依赖项”中的“类路径”来解决它。

只是改变:

dependencies {
    classpath 'com.android.tools.build:gradle:2.3.0-alpha2'

或类似的东西:

dependencies {
    classpath 'com.android.tools.build:gradle:2.2.3'
于 2016-12-29T09:22:00.120 回答
2

我在使用 Android Studio 1.5.1 时遇到了同样的问题。

这通过使用 Android SDK 管理器和更新Android 支持库以及支持库的本地 Maven 存储库来解决

在此处输入图像描述

更新SDK并重启Android Studio后,问题解决。

希望这对尝试其他建议后遇到同样问题的人有所帮助。

于 2016-03-05T19:14:53.857 回答
1

像这样覆盖操作栏样式后出现此错误。我也在预览中丢失了操作栏。

<style name="general_app_theme" parent="@style/Theme.AppCompat">
    <!-- for API level 11 -->
    <item name="android:actionBarStyle">@style/action_bar_style</item>

    <!-- Support library compatibility -->
    <item name="actionBarStyle">@style/action_bar_style</item>

</style>

<style name="action_bar_style" parent="@style/Widget.AppCompat.ActionBar">
    <!-- for API level 11 -->
    <item name="android:height">@dimen/action_bar_height</item>
    <item name="android:background">@color/action_bar_color</item>
    <item name="android:displayOptions">showTitle</item>

    <!-- Support library compatibility -->
    <item name="displayOptions">showTitle</item>
</style>

所以,问题是我的习惯覆盖了主题。这就是为什么我将 AppCompat(从“项目主题”)更改为 general_app_theme(从“清单主题”)的原因。现在我没有这个错误,预览中的操作栏又回来了。

于 2014-10-05T19:00:05.430 回答
1

参考@Benno 提供的答案:您可以简单地从主题菜单中选择“DeviceDefault”,而不是更改为特定主题。这应该选择与模拟设备最兼容的主题。

于 2016-03-21T10:54:57.707 回答
1

如果在尝试了以上所有解决方案后仍然存在问题,请尝试修改 API 级别,如下所示。不正确的 API 级别也可能导致问题。

在此处输入图像描述

于 2016-06-09T06:31:08.120 回答
1

可以通过将styles.xml中的主题从 Theme.AppCompat.Light.DarkActionBar更改为 Base.Theme.AppCompat.Light.DarkActionBar 来修复它

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

清理项目。它肯定会有所帮助。

于 2016-07-29T08:41:01.047 回答
1

尝试将设计视图中的主题切换为“清单主题”中的选项之一。我猜这是因为您从清单中继承主题以支持多个 api 级别。无论如何,它对我有用。

于 2016-01-25T02:59:22.173 回答
0

XML 中的大多数错误是由于您为资源指定的名称而发生的。

存储在可绘制文件夹中的图像需要以适当的方式命名。只需检查以下内容:

  1. 有没有重复的文件?如果是这样,请删除重复项。(例如"image.jpg""image.png"不允许同时出现。它不会显示任何错误但有时会显示R.java无法解析)
  2. 文件名是否包含任何大写字母?如果是这样,请右键单击该file-> refactor->rename 并将其重命名为全部小写,没有连字符,并且只允许使用 az 和 0-9。

只要确定上述情况。

于 2015-04-07T22:40:10.613 回答
0

我遇到了同样的问题。在预览中选择另一个主题可以暂时解决问题。喜欢图片

最后,我发现我的styles.xml中有AppThemeand AppBaseTheme。并且AppTheme有父母 AppBaseThemeAppBaseTheme具有一种系统样式的 父级。

并且每个布局文件都使用主题AppTheme。只需将AppTheme' 的父母更改为AppBaseTheme' 的父母。它永久地解决了问题。

于 2016-12-28T11:33:28.320 回答
0

这已经很晚了,但我喜欢分享我在同样问题上的经验。我在 Android Studio 中遇到了同样的问题,我尝试了在互联网上找到的其他解决方案,但除非我重建项目并解决我的问题,否则对我没有任何用处。

希望这对你也有用。

快乐编码。

于 2017-05-22T15:50:58.030 回答
0

我使用 Holo.Light 作为其父级的自定义主题遇到了同样的问题。在灰色文本中,Android Studio 表示缺少某些属性。当我如下添加这些缺少的属性时,渲染问题就消失了 -

    <item name="android:textEditSuggestionItemLayout"></item>
    <item name="android:textEditSuggestionContainerLayout"></item>
    <item name="android:textEditSuggestionHighlightStyle"></item>

尽管它们在我的风格主题中引入了错误,但它们在渲染活动设计或构建我的应用程序时没有造成任何问题。

于 2016-06-13T19:54:07.853 回答
0

将您的应用主题更改为 AppCombat.. 在此处输入图像描述

于 2017-08-23T16:38:19.443 回答
0

您可以通过更改“应用程序主题”并选择任何主题(例如灯光)来简单地删除此错误。此错误将被删除。

于 2016-07-31T14:18:51.880 回答
0

对我来说,它发生在menu.xml文件中,因为我使用android:Theme.Light作为我的主题,所以我所做的是 -

  1. 在名为 values-v21 的 res 目录中添加了新文件夹。

  2. 添加android:Theme.Material.Light作为 AppTheme 在styles.xml.

于 2017-04-17T12:53:24.377 回答
0

只需点击“ AppTheme ”按钮,然后选择“ Manifest Themes ”。它在大多数情况下都有效。

于 2017-01-03T12:39:45.823 回答