結構ここから長そうだ。
エミュレーターをxにアップデート
あああ、欲しくなってきた。そしてcore i5も
きたきたきた
コンパイルの2回目は少し早くなる
随机应变 ABCD: Always Be Coding and … : хороший
結構ここから長そうだ。
エミュレーターをxにアップデート
あああ、欲しくなってきた。そしてcore i5も
きたきたきた
コンパイルの2回目は少し早くなる
validatesします。
なに?ipad用の167×167と152×152のapp iconがない???
ううう
裏でどういうプロセスが走っているか気になりますね。
それにしてもapp storeにuploadするのにえらい時間かかりますな。
ネットワーク、hardwareのスペックが悪いから?
developerのページでApp IDを登録していく。
https://developer.apple.com/account/ios/identifier/bundle/create
続いてiOS Provisioning Profilesを作成していく。
select appID
Keychain Accessを開きます。
keychain accessから、certificate requestをする。
CertificateSigningRequest.certSigningRequestが出来ました。
続いてKeychain Accessからp.12を作成する。
連敗中は、「-3連敗」ではなく、「3連敗」としたい。
if self.load > 1 {
self.gameResult.text = String(self.load) + str
} else if self.load < -1{
self.gameResult.text = String(abs(self.load)) + strl
} else {
}
[/code]
きたーーーーーー
とりあえず、じゃんけんアプリ完成!
さて、app申請したい。
@IBAction func getChoki(_ sender: Any) { let results2 = ["Image1","Image2","Image3"] let random2 = arc4random_uniform(UInt32(results2.count)) let image2 = UIImage(named: results2[Int(random2)]) imageView.image = image2 let image5 = UIImage(named: "Image5") imageView2.image = image5 let even = "あいこ" let win = "あなたの勝ち" let lose = "あなたの負け" if random2 == 0 { self.gameResult.text = lose if self.userDefaults.object(forKey: "load") != nil { if self.userDefaults.integer(forKey:"load") < 0 { self.load = self.userDefaults.integer(forKey:"load") self.load -= 1 } else { self.load = -1 } } else { self.load = -1 } } else if(random2 == 1){ self.gameResult.text = even if self.userDefaults.object(forKey: "load") != nil { self.load = self.userDefaults.integer(forKey: "load") } else { self.load = 0 } } else { self.gameResult.text = win if self.userDefaults.object(forKey: "load") != nil { if self.userDefaults.integer(forKey:"load") > 0 { self.load = self.userDefaults.integer(forKey:"load") self.load += 1 } else { self.load = 1 } } else { self.load = 1 } } self.gameResult.text = String(self.load) + str UserDefaults.standard.set(self.load, forKey: "load") }
7連勝中でも、一度負けると-1連勝に成りました。
あとはviewの分岐ですね。
self.userDefaults.object(forKey: “load”) != nil で、空判定
let userDefaults = UserDefaults.standard var load = 0 var str:String = "連勝" @IBOutlet weak var imageView: UIImageView! @IBOutlet weak var resultView: UILabel! @IBOutlet weak var imageView2: UIImageView! @IBOutlet weak var gameResult: UILabel! @IBAction func getGoo(_ sender: Any) { let results1 = ["Image1","Image2","Image3"] let random1 = arc4random_uniform(UInt32(results1.count)) let image1 = UIImage(named: results1[Int(random1)]) imageView.image = image1 let image4 = UIImage(named: "Image4") imageView2.image = image4 let even = "あいこ" let win = "あなたの勝ち" let lose = "あなたの負け" if random1 == 0 { self.gameResult.text = even if self.userDefaults.object(forKey: "load") != nil { self.load = self.userDefaults.integer(forKey: "load") } else { self.load = 0 } } else if(random1 == 1){ self.gameResult.text = win if self.userDefaults.object(forKey: "load") != nil { self.load = self.userDefaults.integer(forKey:"load") self.load += 1 } else { self.load = 1 } } else { self.gameResult.text = lose if self.userDefaults.object(forKey: "load") != nil { self.load = self.userDefaults.integer(forKey:"load") self.load -= 1 } else { self.load = -1 } } self.gameResult.text = String(self.load) + str UserDefaults.standard.set(self.load, forKey: "load") }
なるほど、保存できることはわかった。
負けた時に、-1連勝となるので、var str:String = “連勝” の他に、連敗のテキストを作り、連勝中の負けの時と連敗中の勝ちの時は、load = 0 にリセットですな。
勝ちの時
if self.userDefaults.object(forKey: "load") != nil { if self.userDefaults.integer(forKey:"load") > 0 { self.load = self.userDefaults.integer(forKey:"load") self.load += 1 } else { self.load = 0 }
負けの時
if self.userDefaults.integer(forKey:”load”) < 0 { self.load = self.userDefaults.integer(forKey:"load") self.load -= 1 } else { self.load = 0 } [/code]
シミュレータを立ち上げようとすると、
unable to boot device due to insufficient system resources.
なにに。。。。。。。。。
terminalを開いて、、
mac:~ mac$ sudo launchctl limit maxproc 2000 2500
起動するように成りました。
ここら辺はそんなに焦りませんね。
UserDefaults.standardを変数にします。
let userDefaults = UserDefaults.standard var load = 0
0でない場合は、1を足し、0は1。
if self.userDefaults.integer(forKey: "load") != 0 { self.load = self.userDefaults.integer(forKey:"load") self.load += 1 } else { self.load = 1 } UserDefaults.standard.set(1, forKey: "load")
あ、self.userDefaults.integer(forKey: “load”) > 0 か。elseはokですね。
これを、グーチョキパーの勝ち負け引き分けパターン入れていく。
負けの場合は self.userDefaults.integer(forKey: “load”) < 0 として、表示する時に更に分岐で連勝・連敗を表示か。
UserDefaultsは手軽にデータの永続化ができる
インスタンスの作成は UserDefaults.standard