2012-07-21 102 views
4

我需要將圖像保存在SQLite數據庫的資源文件夾中。這個數據庫是預先加載的(複製到數據/路徑),因此在運行時沒有填充。我試圖在SQLite的文本字段中像這樣保存它:「R.drawable.picture1」。在SQLite中保存資源路徑

我的可繪製文件夾中有大約300張小圖片(jpg)。當我運行一個關於課程的查詢時,光標返回particulair字符串。現在我需要在ImageView上將它設置爲ImageResource,但無論我嘗試如何,它似乎都不起作用。

我試着將它解析爲一個int,看起來沒什麼用。無論我嘗試logcat不斷告訴我R.id.picture1不是一個有效的整數。前段時間我已經看到了一個可能的解決方案,但我整天都在搜索它,但似乎無法找到它。

我不想要的:將圖像轉換爲字節數組,因此我可以將它保存爲blob。我只需要一種方法來存儲和檢索可用於在ImageView上設置drawable的可繪製引用。

我不是那麼有經驗,所以我希望有人能幫助我。

回答

7

如果您有資源的名稱,您可以查找資源標識符並將其用於ImageResource。

int resId = context.getResources().getIdentifier("picture1","drawable",context.getPackageName()); 
image.setImageResource(resId);; 
+0

謝謝,試過之前卻犯了整個resource.picture1路徑的錯誤。你的方法取得了訣竅。 – 2012-07-22 08:26:55

+0

我很高興它爲你工作。我犯了同樣的錯誤,然後意識到命令的其中一個參數是什麼類型的資源。 – wyoskibum 2012-07-22 19:34:12