Swift初心者です。
Assetsに”card0”というような画像ファイルを用意しておき、
画面上に表示するコードを下記のように作成しています。
import SwiftUI struct SwiftUIView2: View { @State var Numb = [0,1,2,3,4,5,6,7,8,9,10] var body: some View { VStack { if Numb.isEmpty != true { Image("card" + "\(Numb[1])") .resizable() .padding() .aspectRatio(contentMode: .fit) }else{ Image("card15") .padding() .aspectRatio(contentMode: .fit) } Button(action: { Numb.remove(at: 0) }) { Text("deleate") } } } } struct SwiftUIView2_Previews: PreviewProvider { static var previews: some View { SwiftUIView2() } }
ボタンを押していくと順に配列の1(0)番目が削除されていき、
それに伴いカードの絵柄も変化していきます。
ですが配列の中身が空になった際に、クラッシュしてしまいます。
このクラッシュを回避するために、配列の中身が空の場合は・・・というif分を使ってもクラッシュしてしまいます。
カードゲームのようなアプリを作成しようとしている試作段階でこのエラーが出てしまいました。
(カードをドローしていき、手札に加えていくようなコード)
他の方法があるのでしょうか?もしくは修正が可能でしたらご教授をお願いいたします。
回答1件
あなたの回答
tips
プレビュー