いーじすの戯言

戯言を書く予定です。しょうもなさ全開

Swiftで家計簿アプリ作る【2】

今回も書いていきます。
前回のコードでブログになかった部分

   var accountCount = 0
   var moneyInAccounts: [Int]=[0] 
  //money each of Accounts 
  var nameOfAccounts: [String]=["財布の残金"] 
  //Accounts' name 

これ実はviewCountrollerに書いてるんですよね、
これだと他のviewに移動した時に変数が使えないので、AppDelegate.swiftに書きます。
ただのコピペなので詳細は割愛

次に入出金の入力をする部分を作ります
f:id:u1218:20190812220548p:plain

デザインはこんな感じ 収入ボタンで加算、支出ボタンで減算にするだけ

@IBAction func getMoney(_ sender: Any) {
        if(inputMoneyTextfield.text != ""){
            appDelegate.moneyInAccounts[appDelegate.accountCount]+=Int(inputMoneyTextfield.text!)!
        }
     self.view.endEditing(true)
    }
    @IBAction func leaveMoney(_ sender: Any) {
        print(inputMoneyTextfield.text)
        if(inputMoneyTextfield.text != ""){
            appDelegate.moneyInAccounts[appDelegate.accountCount]-=Int(inputMoneyTextfield.text!)!
        }
        self.view.endEditing(true)
    }

コレクションにするやり方もありそうですがわからないのでとりあえずこのまま

getMoneyボタン(収入ボタン)を押すとテキストフィールド内の数値を今の口座の残金に加算するだけ
leaveMoneyだと減算

この時、テキストが空白だとエラーが起きるので、ifで分けている

次に、テキストフィールドで数字だけを入力できるようにする。


qiita.com
この記事を参考にさせていただきました。

override func viewDidLoad() {
        super.viewDidLoad()
        inputMoneyTextfield.keyboardType = UIKeyboardType.asciiCapableNumberPad
    }

これをviewDidLoadに追加すれば、数字だけのキーボードを出せる

これで「入力した金額で残金を増減できる」と、超基本的なことはできた

今回はこれで。