[英]Android Studio error: No resource found
我在控制台中收到以下消息:
錯誤:(15,22)找不到與給定名稱匹配的資源:attr'colorAccent'。 錯誤:(13,22)
找不到與給定名稱匹配的資源:attr'colorPrimary'。 錯誤:(14,22)
找不到與給定名稱匹配的資源:attr'colorPrimaryDark'。
這是我的style.xml
文件:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="AppBaseTheme" parent="android:Theme.Holo">
<item name="colorPrimary">@color/color_primary</item>
<item name="colorPrimaryDark">@color/color_secondary</item>
<item name="colorAccent">@color/color_accent</item>
</style>
</resources>
我的color.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="cyan">#6441a5</color>
<color name="color_primary">#6441a5</color>
<color name="color_secondary">#6441a5</color>
<color name="color_accent">#6441a5</color>
</resources>
在搜索並查看許多其他解決方案之后,大多數答案都說要將目標SDK更改為21:這是我的清單文件:
<uses-sdk
android:minSdkVersion="15"
android:targetSdkVersion="21" />
我的構建等級:
apply plugin: 'com.android.application'
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
compileOptions.encoding = 'utf-8'
defaultConfig {
applicationId "com.test.test"
minSdkVersion 15
targetSdkVersion 21
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile 'com.android.support:support-v4:21.0.0'
}
但這仍然沒有奏效。 這可能是什么問題?
如果您使用的是colorPrimary
, colorPrimaryDark
和colorAccent
屬性而沒有android:
名稱空間,則表示您正在使用支持庫 。
我會檢查您是否在依賴項中添加了v7支持庫 ,並確保您的應用程序主題具有其中一個Theme.AppCompat
樣式的父Theme.AppCompat
。
這也意味着您需要將compile 'com.android.support:appcompat-v7:21.+'
添加到Gradle依賴項中,並且您的Activity
文件必須extend AppCompatActivity
。
你的相關文件應該是這樣的(我在你的答案中使用了參考/屬性名稱) :
AndroidManifest.xml :
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
... >
...
<application
...
android:theme="@style/AppBaseTheme" >
...
styles.xml :
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="AppBaseTheme" parent="Theme.AppCompat">
<item name="colorPrimary">@color/color_primary</item>
<item name="colorPrimaryDark">@color/color_secondary</item>
<item name="colorAccent">@color/color_accent</item>
</style>
...
colors.xml :
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="color_primary">#6441a5</color>
<color name="color_secondary">#6441a5</color>
<color name="color_accent">#6441a5</color>
...
YourActivity.java :
....
public class DetailActivity extends AppCompatActivity {
....
}
build.gradle :
...
dependencies {
...
compile 'com.android.support:appcompat-v7:21.+'
...
}
確保您已包含我上面列出的行。
當然,在這里我已經把...
表明您可能已經把其他的代碼存在,所以不要隨便把...
到你的代碼。
另請注意,如果您使用的是Gradle,則清單中的版本/ API聲明無關緊要。 因此,您應該能夠刪除它而不會發生任何錯誤:
<uses-sdk
android:minSdkVersion="15"
android:targetSdkVersion="21" />
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.