2013-03-03 120 views
0

我在目錄結構中有幾千個圖像文件。有幾百個不同的子目錄,每個目錄包含10個名爲1.png - 10.png的圖像...如何將文件夾添加到Android資源

如何將這些文件夾添加到我的應用程序並訪問這些圖像?假設我想要foo/bar/1.png?

在android中,它看起來並不像你有一個字符串路徑到您的資產或原始目錄,所以我不知道如何做到這一點。請不要告訴我,我必須將它們壓縮然後將它們解壓縮出資產。

回答

0

在一個它不會出現像你有一個字符串路徑到您的資產

當然可以。假設您的項目中有assets/foo/bar/1.pnggetAssets().open("foo/bar/1.png")會爲您提供該PNG文件的InputStream。然後您可以使用BitmapFactory來讀取它。

但是,資源不能存在於子目錄中。您可以在開發機器上編寫一個腳本,將結構變平(例如,foo/bar/1.png變爲foo_bar_1.png),然後將重命名的文件放入適合目錄的任何一個res/drawable-NNNN/目錄中。

+0

將文件夾foo拖動到資源並設置鏈接到文件夾會導致文件找不到。拖動文件夾並選擇複製到項目的作品。拖動文件夾和鏈接+虛擬文件夾不起作用。 – Mark 2013-03-03 22:15:57

+0

@Mark:正確。這些文件必須位於您的assets /'目錄中。 – CommonsWare 2013-03-03 22:48:06

0

訪問Android的資產文件夾的路徑是:

file:///android_asset/filename 

您應該能夠訪問文件夾:

file:///android_asset/folder1/folder2/targetFolder/ 

注有 '/' 之後3' file:'

+0

BitmapFactory.decodeFile(「file:///android_asset/1.png」);不起作用,也不使用這些文件夾。 getAssets()。open(「1.png」)確實有效。 – Mark 2013-03-03 22:20:53

相關問題