2012-11-22 129 views
6

我正在使用MonoDevelop for Android,我正嘗試從資源文件夾中的圖像創建一個Drawable變量。獲取可繪製資源

我在我的資源下列文件\文件夾繪製:

Icon.png 
monkey.png 
monkeyPurple.png 

如何創建已經從這些文件中的一個獲得的圖像被拉伸的變量?

我曾嘗試下面的代碼:

Drawable icon = Drawable.CreateFromPath("Icon.png"); 

然而,這是行不通的。如果這是從文件加載圖像的正確方法,是否需要具有文件的完整文件名和路徑?我嘗試了許多組合來訪問圖像,但沒有運氣。

我也曾嘗試以下操作:

Drawable icon = R.getResources().getDrawable(R.drawable.Icon); 
Drawable icon = R.getResources().getDrawable(R.drawable.monkey); 
沒有運氣

也。

我可否請幫助正確創建一個可從資源文件夾中獲取圖像的Drawable變量?

謝謝

回答

9

你非常接近,但我認爲你是混合Java和C#。

您可以使用Resource結構來訪問它。我已經把下面的Mono for Android和Java版本作爲參考,但在你的情況下,如果你使用Mono for Android,你需要C#版本。

單聲道的Android(C#)

Drawable icon = Resources.GetDrawable(Resource.Drawable.Icon); 

的Android SDK(爪哇)

Resources res = getResources(); 
Drawable icon = res.getDrawable(R.drawable.Icon); 
+3

感謝。完美的作品。 – Garry

4

就Android API版本的,舊的方法已被棄用和替換爲以下內容:

Drawable icon = ResourcesCompat.GetDrawable(Resources, Resource.Drawable.Icon, null); 

有關詳情,請原Android answer

+0

在這種情況下什麼是資源? – Euridice01