2011-08-26 50 views
2

<uses-sdk android:minSdkVersion="4" />無法訪問(有些)原生的系統資源(圖標)

無法找到一些圖片:@android:drawable/(例如ic_menu_login)

但是,當我瀏覽到C:\Program Files (x86)\Android\android-sdk\platforms\android-4\data\res\drawable存在有圖像( ic_menu_login.png)

當:

<menu xmlns:android="http://schemas.android.com/apk/res/android"> 
<item android:id="@+id/item1" android:title="Refresh" 
    android:icon="@android:drawable/ic_menu_rotate"></item> 
     <item android:id="@+id/login" android:title="Log in" 
    android:icon="@android:drawable/ic_menu_login></item> 
</menu> 

我得到錯誤在控制檯:

W /的ResourceType(5524):爲XML塊:報頭大小191或總大小12517572大於數據大小0

項目更大 - >清潔沒有幫助。

每個圖像都不會發生此問題。

回答

6

並非所有Android資源都是公開的,因爲它們可能在某些設備上不存在。嘗試使用它們(如@android:drawable/ic_menu_login)會在嘗試編譯應用程序時產生錯誤消息。

如果您確實想要在Android SDK中找到特定的可繪製對象,則應將其複製(即ic_menu_login.png)到您的項目中。

+0

對該陳述的任何引用? –

+1

來自Romain Guy(android開發團隊):http://stackoverflow.com/questions/3886873/androiddrawable-ic-vs-androiddrawable-ic –

+0

好的公共資源是在Android SDK的'public.xml'文件中聲明的。以下是可繪製的列表:[public.xml](http://google.com/codesearch#uX1GffpyOZk/core/res/res/values/public.xml&type=cs&l=740)和[這裏是一個基於Web的繪圖資源管理器] (http://androiddrawableexplorer.appspot.com/) – Dave