2015-11-08 6 views
9

から./sndあれば、私の指定したパスのであれば、私はプロジェクトのディレクトリ(別名mainBundle)で始まる経路を通って私のXcodeプロジェクトに含まれるリソースのURLを取得するために必要なプロジェクトの特定のパス

をリソースURLを取得します。 /archer/acknowledge1.wav、それからURLを作成する必要があります。

私は、システムディレクトリのNSURL(fileURLWithPath:)を使用することができます知っているが、私は、バンドルから直接これを行う方法を知りません。

答えて

11

あなたがバンドルリソース教材のURL法最新スウィフトで

[[NSBundle mainBundle] URLForResource:@"acknowledge1" 
         withExtension:@"wav" 
         subdirectory:@"snd/archer"]; 

NSBundle.mainBundle().URLForResource("acknowledge1", withExtension:"wav" subdirectory:"snd/archer") 

のいずれかを使用します:スウィフト3のよう

Bundle.main.url(forResource: "acknowledge1", withExtension:"wav") 
23

を、答えは次のとおりです。

Bundle.main.url(forResource: "acknowledge1", withExtension: "wav" subdirectory: "snd/archer") 
スイフト2.3 yの
+0

答えを修正してください。 'サブディレクトリ'の前にカンマが必要です。これは、スイフト4(&おそらくスイフト3) –

0

このアンラップを使用する必要があります:

if let resourceUrl = NSBundle.mainBundle().URLForResource("acknowledge1", withExtension: "wav", subdirectory:"snd/archer") { 
     if NSFileManager.defaultManager().fileExistsAtPath(resourceUrl.path!) { 
      print("file found") 
      //do stuff 
     } 
    } 
関連する問題