[英]Theme.AppCompat.Light.DarkActionBar - No resource found
[英]No resource found - Theme.AppCompat.Light.DarkActionBar
我使用了 ActionBar 樣式生成器,現在嘗試在我的應用程序中使用,但得到:
錯誤:檢索項目的父項時出錯:找不到與給定名稱“@style/Theme.AppCompat.Light.DarkActionBar”匹配的資源。
我在 libs 文件夾中使用android-support-v7-appcompat.jar lib
我的目標是讓我的應用兼容 2.3 或更高版本
AppCompat
是一個庫項目。 您需要在您的 android 項目中引用庫項目。
檢查主題添加帶有資源的庫。
更新
添加材料主題應該是方法。 查看https://material.io/develop/android/docs/getting-started了解更多詳情。
如果您使用的是Eclipse ,則按照以下步驟將reference library
添加到您的項目中:
Project Explorer
視圖中右鍵單擊您的項目。Properties
。Properties
窗口中單擊Android
。Library
組中,單擊Add...
OK
。OK
按鈕。 如果您使用的是Android Studio,則只需添加依賴項
dependencies {
implementation 'com.android.support:appcompat-v7:25.0.1'
}
到app/build.gradle
。 這會起作用
對於任何使用 VS2015 的人,我也遇到了這個錯誤,結果我沒有將庫添加到項目中......
Install-Package Xamarin.Android.Support.v7.AppCompat
如果您正在使用 Eclipse,如果您打算使用資源,則僅將 android-support-v7-appcompat.jar 復制到 libs 文件夾將不起作用。
按照此處的“ 添加帶有資源的庫”的步驟操作。
一個簡單的解決方案 - 將此文件(/res/values/styles.xml)的內容替換為文本:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar">
<!-- Customize your theme here. -->
</style>
就我而言,我將一個android
項目從一台計算機帶到另一台計算機並遇到了這個問題。 對我有用的是我看到的一些答案的組合:
經過這些步驟,我的運行良好。
dependencies {
compile 'com.android.support:appcompat-v7:23.0.0'
}
這對我有用......在Android Studio中......
使用 Visual Studio 2015 (Windows7) + Xamarin 出現此錯誤,在嘗試多種操作(安裝軟件包、下載 android_m2repository_r10.zip...)后,最終刪除了內部的完整Xamarin 文件夾
C:\\Users\\<my user>\\AppData\\Local
之后,在 VS 中重建應用程序,錯誤消失了。
確保您的 sdk 中有一個 v7 目錄,我認為擁有“Android 支持庫”(在 Extras 中)就足夠了。 原來我錯過了“支持庫的本地 Maven 存儲庫 (extras;android;m2repository)” Studio 發現它實際上並修復了 gradle 依賴項。 使用 gradle 構建然后工作。 $ 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'
}
dependencies {
implementation 'com.android.support:appcompat-v7:28.0.0'
}
compile 已經被 implementation 取代了,不知道為什么。
如果您使用 Android.mk 進行構建,請使用 USE_AAPT2,該鏈接位於來自 AAR 的構建資源中。
在 Android.mk 文件中添加以下行:
LOCAL_USE_AAPT2 := 真
Android support library
..\\sdk\\extras\\android\\support\\v7\\appcompat\\res\\values
)。 某處有一個themes.xml
和themes_base.xml
。 復制這兩個文件。如果您使用的是Visual Studio for MAC ,請單擊“項目”>“恢復 Nutget 包”修復該問題
我有同樣的問題。 這里列出的解決方案都沒有幫助我的情況。 事實證明,我將項目的父文件夾導入 Android Studio 1.5,而不是項目文件夾本身。 這讓Gradel 頭暈目眩。 解決方案是導入項目文件夾。
在 xamarin 中,如果您在添加任何新 sdk 時遇到此問題。 簡單的解決方案是打開您的樣式文件並添加這一行。
<style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar"></style>
這是更好的解決方案,而不是添加 appcompat。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.