Xcode 9.4.1
Alamofire 4.7.3
を使っています。
やりたいことは、複数のゲーム選択画面から特定のゲームに移る際に、
そのゲームのセーブデータが残っているかをBoolで受け取り、
false(ない)なら新規ゲーム画面へ、true(ある)ならセーブデータの画面へ、
そもそもセッションでエラーが起きた時には前の画面へ戻る処理をしたいのです。
lang
1import UIKit 2import Alamofire 3 4class gamelistViewController: UIViewController { 5 //@IBOutlet weak var glNavigationBar: UINavigationBar! 6 //ここはあまり質問と関係ないです 7 8 struct JSONFeed: Codable { 9 let status: String 10 let message: String 11 let isExist: Bool 12 } 13 14 override func viewDidLoad() { 15 super.viewDidLoad() 16 17 } 18 19 20 21 @IBAction func playBingo(_ sender: Any) { 22 23 callJSON() 24 25 if JSONFeed.isExist = false { 26 self.performSegue(withIdentifier: "toBT", sender: "nil") 27 } else { 28 self.performSegue(withIdentifier: "backtoLI", sender: "nil") 29 } 30 } 31 32 func callJSON() { 33 34 let listUrl = "http://foo.bar/test" 35//foo.barの部分は諸事情で伏せています 36 37 Alamofire.request(listUrl).validate().responseJSON {response in 38 guard let json = response.data else { 39 return 40 } 41 print(json) 42 let decoder = JSONDecoder() 43 do { 44 let feed: JSONFeed = try decoder.decode(JSONFeed.self, from: json) 45 print(feed) 46 } catch { 47 print(error) 48 } 49 50 } 51 52 } 53 54 55 //中略 56 57}
func playBingoのところで
lang
1 @IBAction func playBingo(_ sender: Any) { 2 3 callJSON() 4 5 if JSONFeed.isExist = false { 6 self.performSegue(withIdentifier: "toBT", sender: "nil") 7 } else { 8 self.performSegue(withIdentifier: "backtoLI", sender: "nil") 9 } 10 }
としていますが、
if JSONFeed.isExist = false {
ここで
Instance member 'isExist' cannot be used on type 'gamelistViewController.JSONFeed'
が出てしまうのですが、ちょっと書き方がわかりません。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/26 10:03
2018/09/26 10:09