IT박스

주어진 이름 '@ style / Theme.Holo.Light.DarkActionBar'와 일치하는 리소스를 찾을 수 없습니다.

itboxs 2021. 1. 11. 07:52
반응형

주어진 이름 '@ style / Theme.Holo.Light.DarkActionBar'와 일치하는 리소스를 찾을 수 없습니다.


플랫폼 : 4.3

API 레벨 : 18

AndroidManifest.xml :

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

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

저는 안드로이드 초보자입니다. 대단히 감사합니다!


이 작업을 수행:

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

android스타일 전에 키워드를 놓쳤습니다 . 이것은 Android 용 내장 스타일임을 나타냅니다.


프로젝트 속성 (매니페스트가 아님)에서 대상 API (대상 SDK와 다름)를 4.0 / API 14 이상으로 설정했는지 확인합니다.


@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.Holo 테마에만 해당됩니다 (추가 확장 및 변형 없음).

그러나이 튜토리얼에서는 api 레벨 14 (Android 4.0) 이상에서만 유효한 테마 인 Theme.holo.Light.DarkActionBar 테마를 사용합니다.

이것은이 튜토리얼에서 발견 된 오류에 대한 많은 예 중 하나 일뿐입니다 (다른면에서는 훌륭합니다). 누군가가 이번 주말에 이러한 오류를 수정해야합니다. 비용이 많이 들고 성가신 시간 도둑이기 때문입니다. 이 정보를 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 : Android 3.0에서는 Theme.Holo 만 사용할 수 있습니다. 따라서 "Light.DarkActionBar 등을 제거하십시오.

ERROR2: @style/Theme.Holo"> will not work. It is necessary to write @android:style/Theme.Holo">in order to indicate that it is a built in Theme that is being referenced. (A bit strange that "built in" is not the default, but needs to be stated?)

The compiler advice for error correction is to define api level 14 as minimum sdk. This is not optimal because it creates incompliance to Andreoid 3.0 (api level 11). Therefore, I use Theme.Holo only and this seems to work fine (a fresh finding, though).

I am using Netbeans with Android support. Works nicely.


If you use android studio, this might be useful for you.

I had a similar problem and i solved it by changing the skd path from the default C:\Program Files (x86)\Android\android-studio\sdk to C:\Program Files (x86)\Android\android-sdk .

It seems the problem came from the compiler version (gradle sets it automatically to the highest one available in the sdk folder) which doesn't support this theme, and since android studio had only the api 7 in its sdk folder, it gave me this error.

For more information on how to change Android sdk path in Android Studio: Android Studio - How to Change Android SDK Path


in addition,if you try to use CustomActionBarTheme,make sure there is

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

in AndroidManifest.xml

not

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

You can change this one parent attribute ="android:style/Theme.Holo.Light.DarkActionBar"

ReferenceURL : https://stackoverflow.com/questions/18370816/no-resource-found-that-matches-the-given-name-style-theme-holo-light-darkacti

반응형