[android] No resource found - Theme.AppCompat.Light.DarkActionBar

I used ActionBar Style Generator, and now trying to use into my app, but getting :

error: Error retrieving parent for item: No resource found that matches the given name '@style/ Theme.AppCompat.Light.DarkActionBar'.

i am using android-support-v7-appcompat.jar lib inside libs folder

my target is to make my app compatible 2.3 or above

This question is related to android android-actionbar-compat

The answer is


For anyone out there using VS2015, I was getting this error too, and it turns out I hadn't added the library to the project...

Install-Package Xamarin.Android.Support.v7.AppCompat

make sure there is a v7 directory in your sdk, I thought having the 'Android Support Library' (in Extras) was sufficient. Turns out I was missing the 'Local Maven repository for Support Libraries (extras;android;m2repository)' Studio found that actually and fixed the gradle dependencies. using gradle to build then worked. $ cat app/build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    defaultConfig {
        applicationId "pat.example.com.gdbdemo"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
     compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.2.1'
}

If you are using Visual Studio for MAC, fix the problem clicking on Project > Restoring Nutget packages


Using Visual Studio 2015 (Windows7) + Xamarin had this error and after trying multiple things (installing packages, download android_m2repository_r10.zip...) ended removing the full Xamarin folder inside

C:\Users\<my user>\AppData\Local

After that, Rebuild the application in VS and errors disappeared.


In xamarin if you face this issue when you add any new sdk. The simple solution is Open your styles file and add this line.

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

It's better solution rather than adding appcompat.


If you are using Android Studio then just add the dependency

dependencies {
     implementation 'com.android.support:appcompat-v7:25.0.1'
}

to app/build.gradle. And that will work


dependencies {
    implementation 'com.android.support:appcompat-v7:28.0.0'
}

compile has been replaced by implementation, don't know why.


In my case, I took an android project from one computer to another and had this problem. What worked for me was a combination of some of the answers I've seen:

  • Remove the copy of the appcompat library that was in the libs folder of the workspace
  • Install sdk 21
  • Change the project properties to use that sdk build enter image description here
  • Set up and start an emulator compatible with sdks 21
  • Update the Run Configuration to prompt for device to run on & choose Run

Mine ran fine after these steps.


I had this same problem. None of the solutions listed here helped my situation. As it turns out, I was importing the parent folder for a project into Android Studio 1.5, rather than the project folder itself. This threw Gradel into a tizzy. Solution was to import the project folder instead.


In Eclipse: When importing a support library as a project library following the instructions at Adding Support Libraries, don't forget to check the option "Copy proyects into workspace"!


  1. Update your SDK in the manager and be sure to include Android support library in extra's
  2. Go to SDK in file explorer (Finder on mac) track down the extra's folder (..\sdk\extras\android\support\v7\appcompat\res\values on Windows). Somewhere in there is a themes.xml and themes_base.xml. Copy both of these files.
  3. In your project paste the files into 'values' directory

If you are using the Android.mk to build then use the USE_AAPT2, which link in the built resource from the AAR.

Add below line in Android.mk file:

LOCAL_USE_AAPT2 := true


A simple solution - replace contents this file (/res/values/styles.xml) to this is text:

<resources>

<!-- Base application theme. -->
<style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar">
    <!-- Customize your theme here. -->
</style>


dependencies {

    compile 'com.android.support:appcompat-v7:23.0.0'

}

This worked for me... in Android Studio...


If you are using Eclipse just copying android-support-v7-appcompat.jar to libs folder will not work if you are going to use resources.

Follow steps from here for "Adding libraries with resources".


If you're using Eclipse, then add the reference library into your project as the following steps:

  1. Right-click your project in the Project Explorer View.
  2. Click Properties.
  3. Click Android in the Properties window.
  4. In the Library group, click Add...
    • See the image below.
  5. Select the library. Click OK.
  6. Click the OK button again in the Properties window.

The "Add" button in the project Properties window, Android section, Library group.