web-dev-qa-db-ja.com

SWIFTを使用して、assets.xcassetsパスをプログラムで計算する

Swiftコードで画像へのパスを理解しようとしています。これはObjective Cで機能すると思います。

[UIImage imageWithContentsOfFile:[NSString stringWithFormat:@"%@/%@.png", [[NSBundle mainBundle] resourcePath], imgName]];

.png画像のパスを取得するには、assets.xcassetsに保存しました。しかし、私はSwiftでは今、Objective Cではなく、そうする必要があります。

ここに配置した画像をiCloudのCKAssetにアップロードしようとしているため、パスが必要です。

13
user3069232

ファイルへのパスのみが必要で(UIImageのインスタンスは必要ない)場合は、次のようになります。

Swift 2:

if let resourcePath = NSBundle.mainBundle().resourcePath {
    let imgName = "dog.png"
    let path = resourcePath + "/" + imgName
}

Swift 3/4:

if let resourcePath = Bundle.main.resourcePath {
    let imgName = "dog.png"
    let path = resourcePath + "/" + imgName
}
17
James Zaghini