Недостающие стили. Правильная ли тема выбрана для этого макета?

163

Недостающие стили. Правильная ли тема выбрана для этого макета? Используйте поле со списком «Тема» над макетом, чтобы выбрать другой макет, или исправьте ссылки на стиль темы. Не удалось найти стиль mapViewStyleв текущей теме.

Я перепробовал все доступные решения, чтобы решить эту проблему, но ничего не помогло. Я включил библиотеку в файл манифеста. Я даже создал style is styles.xml, я также выбрал цель сборки Google Apis.

Может кто-нибудь, пожалуйста, дайте мне решение?

вот мой XML- файл:

<?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>   

Вот мой манифест сниппет:

  <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>

вот мой файл style.xml

<resources>
    <style name="mapViewStyle" parent="@android:style/Theme.Black">
    </style>
</resources>
vinzee
источник
Конечно, это не @style/AppThemeтвой недостаток ?
Бланделл
Спасибо за ваш ответ, я новичок в разработке Android. Это не решило проблему. Я добавил AppTheme, но я все еще получаю ту же ошибку. Я изменил тему всего приложения на Theme.Light, чтобы больше не было конфликтов. Но проблема все еще сохраняется !!! Я не могу понять, как преодолеть эту проблему.
Когда я запускаю приложение, оно работает нормально до второго действия, но в действии, которое отображает карты, оно отображает «К сожалению, yourapp остановился»
@DebeshAdhikari Если ваша проблема решена, попробуйте принять ответ, который помог вам в ее решении
sachinjain024
Изменение minSDKVersionи targetSdkVersionв build.gradleфайле у меня сработало.
rupinderjeet

Ответы:

152

Для Android Studio (или IntelliJ IDEA),

Если в вашем проекте все выглядит нормально, и вы по-прежнему получаете сообщение об ошибке в макетах, попробуйте «Отменить кеширование и перезапустить».

Наслаждайтесь кофе, пока Android Studio воссоздает кэши и индексы.

как сделать недействительным кеш и перезапустить

gbero
источник
1
Спасибо. Для меня ошибка произошла в IntelliJ IDEA при обновлении с 13.0.3 до 13.1.4, и это исправило ее.
Ренни Пит
1
Спасибо, я новичок в Android Studio, и в поисках этого ответа я обнаружил, что ваш ответ - именно то, что мне нужно.
Али Ансари
Спасибо, это решило мою проблему на Android Studio 1.0 RC 2, Windows 7.
Sabuncu
Это сработало для меня, работает Android Studio 1.0.2, Mac OS X 10.9
yiwei
У меня работает на Android Studio на Mac.
mdgrech
151

У меня была та же проблема, и я обнаружил, что это раскрывающийся список тем в верхней части графического редактора макетов. Я перешел с Holo на Theme, и отображаемая раскладка исчезла.

Бенно
источник
Большое спасибо, это помогает
Уильям Кинаан
19
Я изменил его с "App Theme" на "App Compat", и это исправило это для меня. Кстати, решетки отлично предотвращают попадание котят в канализацию.
Б. Клэй Шеннон
Ваш ответ работает для меня. Я проверяю свою тему в стиле, а затем выбираю ее и в макете :)
Стив
Спасибо! Меня устраивает. Я выбрал "Holo.Light.NoActionBar"
Эндрю Гроу
14

То , что я обычно делаю следующее: а Gradle Clean, Rebuildи Sync all my Gradle files. После этого я restart Android Studio , и я иду в:

Select Theme -> Project Themes -> AppTheme
Генри Чжу
источник
10

Это потому, что вы выбираете не тему вашего проекта. Попробуйте сделать следующее:

введите описание изображения здесь

Юлия Ашомок
источник
Работай на меня, Thx.
Убийца эго
7

Если мы создаем слишком много проектов с использованием Android Studio, то иногда возникает проблема рендеринга. Даже создавая пустое действие, мы получаем такую ​​ошибку рендеринга. Пожалуйста, закройте и перезапустите Android Studio. Если проблема не устранена, вы можетеAndroid Cache Invalidation и перезапуск

Надеюсь это поможет. Он работает аналогично практическому правилу, если все выглядит хорошо и ошибка сохраняется, перезапуск приложения обычно решает проблему.

Doogle
источник
4

В моем случае проблема возникла, когда для Android по умолчанию в Designer было установлено значение «Предварительный просмотр N». Версия Android изменилась на «23», и уведомление об ошибке исчезло.
Редактировать
И не забудьте снять флажок «Автоматически выбирать лучшие».

redocoder
источник
2

У меня была такая же проблема при использовании Android Studio 1.5.1.

Это было решено с помощью Android SDK Manager и обновления библиотеки поддержки Android , а также локального репозитория Maven для библиотек поддержки .

введите описание изображения здесь

После обновления SDK и перезапуска Android Studio проблема была устранена.

Надеюсь, что это поможет всем, у кого возникла такая же проблема, после того, как вы попробуете другие предложения.

keshav.bahadoor
источник
Я не пробовал ни одного другого предложения, сразу перешел к этому, и мой предварительный просмотр без ошибок отображался после обновления SDK и перезапуска Android Studio.
xpagesbeast
2

Я решил это, изменив "classpath" в "зависимости" в build.gradles.

Просто измените:

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

или что-то в этом роде:

dependencies {
    classpath 'com.android.tools.build:gradle:2.2.3'
BuildGradle
источник
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 (с «Темы манифеста»). Теперь у меня нет этой ошибки, и панель действий в режиме предварительного просмотра возвращается.

Базанов Алексей
источник
1

Попробуйте переключить тему в режиме конструктора на один из параметров в «Темах манифеста». Я предполагаю, что это потому, что вы наследуете тему от манифеста для поддержки нескольких уровней API. В любом случае это сработало для меня.

Setheck
источник
1

Со ссылкой на ответ, предоставленный @Benno: вместо того, чтобы перейти к определенной теме, вы можете просто выбрать «DeviceDefault» в меню темы. Это должно выбрать тему, наиболее совместимую с эмулированным устройством.

Алекс Иван Ховард
источник
1

Если после решения всех приведенных выше проблем у вас все еще остается проблема, попробуйте изменить уровень API, как показано ниже. Неправильный уровень API также может вызвать проблему.

введите описание изображения здесь

xelmirage
источник
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>

и очистить проект . Это обязательно поможет.

Mrigank
источник
0

Большинство ошибок в XML происходит из-за имен, которые вы дали ресурсам.

Изображения, хранящиеся в папке для рисования, должны быть правильно названы. просто проверьте эти вещи:

  1. Есть ли дубликаты файлов? если так, удалите дубликаты. (Например, "image.jpg"и "image.png"не разрешены в одно и то же время. Это не будет показывать никаких ошибок, но иногда это покажет, что R.java не может быть решен)
  2. Есть ли в именах файлов прописные буквы? Если это так, щелкните правой кнопкой мыши на этом file-> refactor-> rename и переименуйте его со всеми строчными буквами, без дефисов, и допускаются только az и 0-9.

Просто убедитесь в вышеуказанных случаях.

Eldhose
источник
0

У меня возникла та же проблема с моей настроенной темой, которая использовала Holo.Light в качестве родителя. В сером тексте Android Studio указано, что некоторые атрибуты отсутствуют. Когда я добавил эти отсутствующие атрибуты следующим образом, проблемы рендеринга исчезли -

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

Несмотря на то, что они добавили ошибки в тему моего стиля, они не вызвали проблем при рендеринге проектов действий или создании моего приложения.

Эрл Аллен
источник
1
Я говорил слишком рано - с экранами все в порядке; Тем не менее, я получаю «Ресурс не найден» для строк контейнера и стиля ». Быть в курсе.
Эрл Аллен
Очевидно, в родительской теме android.'theme.Holo.Light 'отсутствуют эти атрибуты, и я не могу найти документацию для их включения. Я решил свою проблему, переключившись на тему «android.theme.Holo».
Эрл Аллен
0

Вы можете просто удалить эту ошибку, изменив «Тема приложения» и выбрав любую тему, например, light. Эта ошибка будет удалена.

user6660231
источник
0

Я сталкиваюсь с той же проблемой. Выбор темы для другой в предварительном просмотре может решить проблему временно. Как изображение

Наконец я узнал, что есть AppThemeи AppBaseThemeв моем файле styles.xml. И AppThemeимеет родителя AppBaseTheme. AppBaseThemeИмеет родитель одного стиля системы.

И каждый файл макета использовать тему AppTheme. Просто измените AppThemeродителя на AppBaseThemeродителя. Это решит проблему навсегда.

Цуй Цин
источник
0

Просто нажмите кнопку « AppTheme » и выберите « Manifest Themes ». Это работает в большинстве случаев.

Николай Асинович
источник
0

Для меня это происходило в menu.xmlфайле, когда я использовал android: Theme.Light в качестве моей темы, так что я сделал -

  1. Добавлена ​​новая папка в директорию res с именем values-v21.

  2. Добавлен андроид: Theme.Material.Light as AppTheme в styles.xml.

B.shruti
источник
0

Это очень поздно, но я хотел бы поделиться своим опытом по этой же проблеме. я столкнулся с той же проблемой в Android-студии, я пытался найти какое-то другое решение, которое я нашел в интернете, но у меня ничего не работает, если я не перестроил проект и это не решит мою проблему.

Надеюсь, это будет работать и для вас.

Удачного кодирования.

Хумейра Нааз
источник
0

Измените тему приложения на AppCombat. введите описание изображения здесь

Нафеес Ахмед
источник