Не найден ресурс, соответствующий заданному имени ' @style / Theme.Голографический.Свет.DarkActionBar'


: 4.3

уровень API: 18

AndroidManifest.XML-код:

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

значения-v14стили.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>

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

7 52

7 ответов:

этого:

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

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

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

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

пример:

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

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

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

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

но в этом уроке используется тема the theme.голографический.Свет.DarkActionBar, который является только допустимой темой от уровня api 14 (Android 4.0) и выше.

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

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

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

" Ибо 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: только тема.Holo можно использовать с Android 3.0. Поэтому уберите "свет.DarkActionBar etc.

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

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

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

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

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

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

для получения дополнительной информации о том, как изменить путь Android sdk в Android Studio: Android Studio-как изменить путь Android SDK

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

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

в AndroidManifest.xml

не

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

вы можете изменить этот Родительский атрибут = " android: стиль / тема.Голографический.Свет.DarkActionBar"