2014-11-25 62 views
2

@drawable VS @android:可繪製在android系統

android:src="@andriod:drawable/filename" 

android:src="@drawable/filename" 

我可以訪問相同的資源以這種方式在XML文件之間的任何差異。有什麼不同?

+0

@andriod:drawable /是默認的Android drawables檢查這個http://stackoverflow.com/questions/3201643/how-to-use-default-android-drawables – Gattsu 2014-11-25 11:22:39

回答

8

有一大堆的區別:

android:src="@android:drawable/filename" 

它可以讓你只能訪問其通過Android包提供的圖形內容和:

android:src="@drawable/filename" 

允許你訪問這些可繪製該你把你的應用程序的可繪製文件夾內

+0

它意味着drawable-hdpi類文件夾內的某些東西,它可以通過「@android」訪問,並且已經在可繪製表格中複製的資源r可以通過「@drawable」@Sarthak訪問? – Jeet 2014-11-25 11:26:17

+0

@請問這個問題有一個非常大的答案,但要簡短: 假設你有一個圖像,你現在在ImageView中顯示每個設備有不同的決議,所以你的圖像可能會出現在某些設備,並可能出現模糊的一些,所以Android有不同的可繪製的文件夾,其中主要的是:mdpi,hdpi,xhdpi,xxhdpi 現在你把你的相同的圖像在不同的圖像分辨率的文件夾,android會自動比較運行時的設備分辨率並顯示來自相關文件夾的圖像。 – 2014-11-25 11:34:18

1

是的兩者是非常不同的。

android:src="@andriod:drawable/filename"這是一個資源,你可以得到android內置資源。

android:src="@drawable/filename"這是你添加自己的資源和訪問的資源。

1

的符號是

@[package:]drawable/filename 

你與你的第一行訪問的資源是嵌入在Android項目可繪製。如果您未定義程序包,則可以從應用程序的res文件夾中訪問資源。這些資源並不相同。

1

是的,當然。 「@andriod:drawable/filename」有區別& @ drawable/filename。

"@android:drawable/filename" 

由系統提供。資源包含在您的SDK中,您可以探索資源的路徑來檢查。

"@drawable/filename" 

是我們自己的資源,如應用程序的圖標,背景&更多。

+1

你可能想糾正它:不是andriod - android – 2017-01-06 22:41:47

2

兩個電話之間的區別是簡單

android:src="@andriod:drawable/filename" 

這給到內置在Android SDK中繪製文件的訪問。

android:src="@drawable/filename" 

這給你的Android SDK中的可繪製文件訪問哪些是用於項目即繪製在項目文件夾中的文件夾res

雖然使用第一個我們可以發現它不會顯示項目文件夾中的任何可繪製的名稱res。而當你使用第二個它不會顯示的名稱內置抽拉

你可以找到所有內置的資源(繪製,動畫等),通過您的API級別使用SDK

<your_path>\sdk\platforms\<api-level>\data\res 

<your_path>\sdk\platforms\android-19\data\res這將顯示API-19下的所有內置資源