アプリ制作

計算機アプリを作ってみる4

さて、前回は配置されたボタンやテキストフィールドとViewControllerのソースコードと紐付けをしました。

しかしまだまだ不十分。

ここからこの

@IBAction func tap1z(_ sender: Any) {
}

の部分にいろいろ書いていかないといけないようです。

まず最初にtapnum.textに"1"という文字列を最後尾に付け足す処理です。
{}の中に以下の記述をしてみたところ

let value=tapnum.text+"1" //文字列tapnumに"1"を付け足す


するとswift先生に怒られる。
アンラップされてないからうんたらかんたら。

どうも"?"か"!"をつけろと言っているらしい。
エラーが出たらその下にswift先生が解決策候補を提示してくれるのでダブルクリックしたら"!"が追加されてエラーが消えました。

ちなみに//と書けばそのあとは自由にコメントが書けるようです。
HSPの”;”の役目ですな。

さて”!”を付けて以下のように記述しました。

ーーーーーーーーーーーーーーーーーーーーーーーー
@IBAction func tap1z(_ sender: Any) { //1がタップされた。

let value=tapnum.text!+"1" //文字列tapnumに1を付け足す
let aho=Int(value) //01という文字列になるので数値型にして1に
tapnum.text="\(aho)" //数字表示エリアに文字列表示
}
ーーーーーーーーーーーーーーーーーーーーーーーー

さーてちゃんと表示できるかなー?
シミュレーターで確認してみました。


1をタップしてみると数字が表示されるところに
Optional(1)
と表示される。
えーと・・・これは何ですの?
もう一回タップしてみる。


すると今度は
nil
と表示されました。
おぎゃー
意味不明www

ーーーーーーーーーーーーーーーーーーーーーーーー
@IBAction func tap1z(_ sender: Any) {

let value=tapnum.text!+"1"
tapnum.text="\(String(describing: value))"
}
ーーーーーーーーーーーーーーーーーーーーーーーー
上のように記述を変更。
とりあえず数値型に変換は諦めてちゃんと表示できるか確認してみよう。


1をタップしたところ。
おお、01になっているが表示は正常のようだ。


1を連打。うんうん。1が語尾に追加されていくな。

さて、改めて先頭の0を取り除かなければいけない。

さっき1をタップして表示されたOptional(1)とかnilとかいうのが怪しいな! 

次回はしっかり0を取り除いてみたい! ^0^

-アプリ制作

© 2024 Bou.O The World Powered by AFFINGER5