1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【SwiftUI】No image named '' found in asset catalog for 〜〜 のエラー内容とその対応

Posted at

No image named '' found in asset catalog for 〜〜というエラーをググると英語か古い記事しかヒットしなかったので、備忘録としてエラー内容と対応を記しておきます。

結論

アセット(画像)がない。ただそれだけ!英語の原文のままです。

もう少し書きます。
SwiftUIの場合、以下のようなコードで画像を描写することを宣言しますが、Assets.xcassetsに宣言されたアセットがないためタイトルにあるエラーが出るよって話でした。

 Image("アセット名")

対応

Assets.xcassetsにアセット(画像とか)を登録してあげればよい。
タイポ起こりがちだから注意。

【余談】自分の場合は変数を使ってエラーになっていた

自分の場合はここに変数を代入していてエラーになっていた。
こんなかんじ↓

@State var hoge = "" 
Image(hoge)

なので、以下のような対応で回避した。

@State var hoge = "hoge" 

if hoge.isEmpty == false {
    Image(hoge)
}

または、以下のようにBoolを使う方法

@State var isHoge = true 

if isHoge {
    Image("hoge")
}

他にいい方法があるのかもですが、そのときはご指摘いただけると幸いです。

終わりに

エラーが出ていても画像が描写されないだけなのでアプリ自体は問題なく動く。

今後バグの原因になりそうなのと、他のエンジニアにとっても見落としなのかとも思われそうなので、しっかりエラー内容は理解して潰していきたい。そう思った今日このごろ。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?