Відсутні стилі. Чи обрана правильна тема для цього макета?


163

Відсутні стилі. Чи обрана правильна тема для цього макета? Використовуйте поле "Тема" над макетом, щоб вибрати інший макет або виправити посилання стилю теми. Не вдалося знайти стиль mapViewStyleу поточній темі.

Я намагався всі доступні рішення для вирішення цієї проблеми, але, здається, нічого не працює. Я включив бібліотеку у файл маніфесту. Я навіть створив стиль style.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>

Впевнені, що це не @style/AppThemeваш зниклий?
Блонделл

Дякую за вашу відповідь, я новачок у розробці Android. Це не вирішило проблеми. Я додав AppTheme, але я все одно отримую ту ж помилку. Я змінив тему всієї програми на Theme.Light, щоб більше не було конфліктів. Але проблема як і раніше зберігається !!! Я не можу зрозуміти, як подолати цю проблему.

Коли я запускаю програму, вона працює добре до другої активності, але в тій діяльності, яка відображає карти, вона відображає "На жаль, ви перестали"

@DebeshAdhikari Якщо ваша проблема вирішена, подумайте про прийняття відповіді, яка допомогла вам її вирішити
sachinjain024

Зміна minSDKVersionі targetSdkVersionу build.gradleфайлі працювала на мене.
rupinderjeet

Відповіді:


152

Для Android Studio (або IntelliJ IDEA),

Якщо у вашому проекті все виглядає нормально, і ви все ще отримуєте помилку у своїх макетах, спробуйте "Недійсні кеші та перезапуск".

Насолоджуйтесь кавою, поки Android Studio відтворює кеші та індекси.

як визнати недійсним кеш і перезапустити


1
Дякую. Для мене помилка сталася в IntelliJ IDEA, коли я оновив з 13.0.3 до 13.1.4, і це виправило.
RenniePet

1
Thnx, я новачок в Android Studio, і шукаючи цю відповідь, я знайшов, що саме те, що мені потрібно.
Алі Ансарі

Дякую, це вирішило мою проблему в Android Studio 1.0 RC 2, Windows 7.
Сабунку

Це працювало для мене, під керуванням Android Studio 1.0.2, Mac OS X 10.9
вихід

Працює для мене в Android Studio на Mac.
mdgrech

151

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


Велике спасибі, це допомагає
Вільям Кінаан

19
Я змінив його з "Тема додатка" на "App Compat", і це виправило для мене. До речі: решітки відмінно допомагають кошенятам не підмітати в каналізацію.
Б. Клей Шеннон

Ваша відповідь працює для мене. Я перевіряю мою тему в стилі, потім я вибираю її також у макеті :)
Стів

Дякую! Це працює для мене. Я вибрав "Holo.Light.NoActionBar"
Ендрю Росте

14

Зазвичай я роблю наступне: а Gradle Clean, Rebuildі Sync all my Gradle files. Після цього я займаюся restart Android Studio і переходжу до:

Select Theme -> Project Themes -> AppTheme


7

Якщо ми створюємо занадто багато проектів, використовуючи Android Studio, коли-небудь виникає проблема візуалізації. Навіть створюючи порожню активність, ми отримуємо таку помилку візуалізації. Вимкніть та перезапустіть студію Android. У випадку, якщо питання не зникне, ви можетеНедійсність та перезапуск кеш-пам’яті Android Studio

Сподіваюся, це допомагає. Це працює так само, як правило, якщо все виглядає добре і все-таки помилка зберігається, перезапуск програми зазвичай вирішує проблему.


4

У моєму випадку проблема виникла, коли для версії Android за замовчуванням у дизайнері було встановлено значення "Попередній перегляд N". Змінено версію Android на "23", і повідомлення про помилку пішло.
Редагувати.
Не забудьте зняти прапорець "Автоматично вибрати найкраще".


2

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

Це було вирішено за допомогою диспетчера SDK Android та оновлення бібліотеки підтримки Android , а також локального сховища Maven для бібліотек підтримки .

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

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

Сподіваюсь, це допоможе всім, хто має таку ж проблему, спробувавши інші пропозиції.


Я не пробував жодної іншої пропозиції, перейшов прямо до цього, і попередній перегляд вийшов без помилок після оновлення 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'

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. Це працювало для мене все одно.


1

З посиланням на відповідь, надану @Benno: Замість зміни конкретної теми, ви можете просто вибрати "DeviceDefault" у меню теми. Це повинно вибрати тему, найбільш сумісну з імітованим пристроєм.


1

Якщо у вас все-таки виникають проблеми після спробу всіх рішень вище, спробуйте змінити рівень API, як показано нижче. Неправильний рівень API також може спричинити проблему.

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


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>

та очистити проект . Це точно допоможе.


0

Більшість помилок у XML трапляються через імена, які ви дали ресурсам.

Зображення, що зберігаються у папці, що виводиться, повинні бути належним чином названі. просто перевірте:

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

Просто переконайтесь у наведених вище випадках.


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

Ви можете просто усунути цю помилку, змінивши "Тему додатка" та вибрати будь-яку тему, наприклад, світло. Ця помилка буде видалена


0

Я зустрічаюсь з тією ж проблемою. Виберіть тему для іншої в попередньому перегляді, це може вирішити проблему тимчасово. Як і зображення

Нарешті я з’ясував, що є AppThemeі AppBaseThemeв моїх стилях.xml. І AppThemeмає батьків AppBaseTheme. У AppBaseThemeбатьків є один системний стиль.

І кожен файл макета використовує тему AppTheme. Просто змініть AppThemeбатьківського на AppBaseThemeбатьківський. Це вирішує проблему постійну.


0

Просто потрібно натиснути кнопку " AppTheme " та вибрати " Теми маніфесту ". Це працює в більшості випадків.


0

Для мене це відбувалося у menu.xmlфайлі, коли я використовував android: Theme.Light як моя тема, так що я і робив -

  1. Додано нову папку в каталог res, з назвою значення-v21.

  2. Додано андроїд: Theme.Material.Light як AppTheme в styles.xml.


0

Це дуже пізно, але мені подобається поділитися своїм досвідом цього самого питання. Я зіткнувся з тією ж проблемою в студії Android, я спробував знайти інше рішення, яке я знайшов в Інтернеті, але нічого не працює для мене, якщо я НЕ ВИСТАВЛЯЮТЬ ПРОЕКТ і це не вирішить мою проблему.

Сподіваємось, це теж спрацює і для вас.

Щасливе кодування.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.