Подтвердить что ты не робот

Не найден ресурс, который соответствует указанному имени '@style/Theme.Holo.Light.DarkActionBar'

Платформа: 4,3

Уровень API: 18

AndroidManifest.xml:

<uses-sdk
    android:minSdkVersion="18"
    android:targetSdkVersion="18" />

значения-v14\styles.xml:

  <resources>

<!--
    Base application theme for API 14+. This theme completely replaces
    AppBaseTheme from BOTH res/values/styles.xml and
    res/values-v11/styles.xml on API 14+ devices.
-->
<style name="AppBaseTheme" parent="android:Theme.Holo.Light">
</style>

 <style name="CustomActionBarTheme"
       parent="@style/Theme.Holo.Light.DarkActionBar">
    <item name="android:actionBarStyle">@style/MyActionBar</item>
</style>

<style name="MyActionBar"
       parent="@style/Widget.Holo.Light.ActionBar.Solid.Inverse">
    <item name="android:background">@drawable/actionbar_background</item>
</style>

Я новичок-андроид. Спасибо большое!

4b9b3361

Ответ 1

Сделайте это:

"android:style/Theme.Holo.Light.DarkActionBar"

Вы пропустили ключевое слово android перед стилем. Это означает, что это встроенный стиль для Android.

Ответ 2

Убедитесь, что вы установили целевой API (отличный от целевого SDK) в свойствах проекта (а не в манифесте) не менее 4.0/API 14.

Ответ 3

@android не работал у меня. Когда я использую android (без @), он работает как шарм.

Пример:

<style name="CustomActionBarTheme"
       parent="android:style/Theme.Holo.Light.DarkActionBar">

Ответ 4

В учебниках, предназначенных для новичков, есть большая ошибка: http://developer.android.com/training/basics/actionbar/styling.html

Это важно, потому что почти невозможно обнаружить причину ошибки для новичков.

Ошибка заключается в том, что в этом руководстве явно указано, что учебник действителен для уровня 11 уровня (Android 3.0), а на самом деле это справедливо только для темы Theme.Holo(без дополнительных расширений и вариантов)

Но в этом учебнике используется тема Theme.holo.Light.DarkActionBar, которая является только действительной темой с 14-го уровня (Android 4.0) и выше.

Это лишь один из многих примеров ошибок, обнаруженных в этих руководствах (которые в лучшем случае важны). Кто-то должен исправить эти ошибки в эти выходные, потому что они действительно дорогостоящие и раздражающие timethieves. Если есть способ, я могу отправить эту информацию в команду Android, тогда, пожалуйста, скажите мне, и я это сделаю. Надеюсь, однако, они читают Stackoverflow. (позвольте мне предложить: команде Android следует подумать о том, чтобы поставить кого-то новичка, чтобы испытать все учебные пособия в качестве квалификации, которые они действительны).

Другая ошибка я (и бесчисленное множество других людей) обнаружила, что модуль соответствия обратной связи appcombat действительно не работает, если вы строго следуете учебным пособиям. Ошибка неизвестна. Мне пришлось отказаться.

Что касается ошибки в этом потоке, вот цитата из текста учебника с курсивом о несоответствии:

" Только для Android 3.0 и выше

Если вы поддерживаете только Android 3.0 и выше, вы можете определить фон панели действий следующим образом:

    <resources>
        <!-- the theme applied to the application or activity -->
        <style name="CustomActionBarTheme"
        parent="@style/Theme.Holo.Light.DarkActionBar"> 

ERROR1: Только Theme.Holo можно использовать с Android 3.0. Поэтому удалите "Light.DarkActionBar и т.д.

ERROR2: @style/Theme.Holo " > не будет работать. Необходимо написать @android: style/Theme.Holo" > , чтобы указать, что это встроенная тема, на которую ссылаются. (Немного странно, что "встроенный" не является значением по умолчанию, но нужно указать?)

Рекомендация компилятора для исправления ошибок состоит в том, чтобы определить уровень 14 api как минимум sdk. Это не оптимально, потому что это создает несоответствие Andreoid 3.0 (уровень 11 api). Поэтому я использую только Theme.Holo, и это, кажется, работает отлично (но новый вывод, хотя).

Я использую Netbeans с поддержкой Android. Хорошо работает.

Ответ 5

Если вы используете студию Android, это может быть полезно для вас.

У меня была аналогичная проблема, и я решил ее, изменив путь skd по умолчанию: C:\Program Files (x86)\Android\android-studio\sdk до C:\Program Files (x86)\Android\android- sdk.

Кажется, проблема возникла из версии компилятора (gradle автоматически устанавливает ее на самую высокую, доступную в папке sdk), которая не поддерживает эту тему, и поскольку у студии Android была только api 7 в ее папке sdk, он дал мне эту ошибку.

Подробнее о том, как изменить Android-путь sdk в Android Studio: Android Studio - Как изменить путь к SDK Android

Ответ 6

Кроме того, если вы попытаетесь использовать CustomActionBarTheme, убедитесь, что есть

<application android:theme="@style/CustomActionBarTheme" ... />

в AndroidManifest.xml

not

<application android:theme="@android:style/CustomActionBarTheme" ... />

Ответ 7

Вы можете изменить это  parent attribute = "android: style/Theme.Holo.Light.DarkActionBar"