iphoneリソースを再利用しています。多くのサブディレクトリを持つ無数のリソースがあり、ネイティブコードの多くも再利用しています。アセットを開くには、アセットにファイル名test1.pngがある場合、exの相対パスを指定する必要があることを理解しています。 /subdir1/subdir2/subdir3/test1.png相対パス全体について言及する必要があります。すでに述べたように、ネイティブコードの多くを使用しているので、完全な相対パスなしでファイル名だけを使用してアセットファイルにアクセスできる方法はありますかパス「test1.png」?または、これが不可能な場合は、とにかくリソースを論理的に構造化できますが、フォルダー名は実際には物理的に存在しません。
1 に答える
assets/subdir1/subdir2/subdir3/test1.png にファイル名 test1.png がある場合、アセットを開くには ex の相対パスを指定する必要があることを理解しています。相対パス全体について言及する必要があります。
AssetManager
や のようなメソッドでは、相対パスの部分はありopen()
ません。assets/
あなたの例では、を使用しますopen("subdir1/subdir2/subdir3/test1.png")
。
既に述べたように、私は多くのネイティブ コードを使用しているため、完全な相対パス "test1.png" を使用せずにファイル名だけを使用してアセット ファイルにアクセスする方法はありますか?
もちろん違います。test1.png
ツリー全体で10,000 個のファイルに名前が付けられている可能性がありますassets/
。どのファイルを開くかを知る必要があります。
さらに、私の知る限り、ネイティブコードはアセットにアクセスできません。
または、これが不可能な場合でも、リソースを論理的に構造化できますが、フォルダー名は実際には物理的に存在しません。
プロジェクトのディレクトリ ツリーとして物理的に配置したassets/
ものは、 を介してそれらにアクセスするときに使用する必要がありますAssetManager
。でサブディレクトリを処理する必要がない場合はAssetManager
、内部にサブディレクトリを作成しないでください。assets/