鳩ブログ

サラリーマンが綴るブログ

SwiftUIの勉強 3日目

f:id:hato36:20200818165921p:plain
途中でいったん考えていたプログラムを作ってみようと思ったがやっぱりダメだったw
なので引き続き本を見ながらの勉強を進めることにした。

 

まだまだ慣れていないことが多い

特に慣れていないことはエラー時のメッセージの対処方法。
理解が浅いせいでエラーが出てもなんのこっちゃ?となることが多い。
Webで調べたりもしているがいまいち進みが遅い。

なので、SwiftUIの本に沿って再び勉強していくことにする。
趣味?勉強?であり仕事ではないので焦らない焦らない。

とはいえ、お盆休みですっかり抜けているのも事実なので再び日課にするべく本日から取り組もうと思う。

 

StepperというUIパーツを使っていく

f:id:hato36:20200818165525p:plain

Stepperとは上記のようなパーツのこと。
マイナスとプラスが表示され、これにより値を上下させるというパーツ。
これをもとに、個数を変化させて同時に金額をいじるというのが今日のお題。

f:id:hato36:20200818165956p:plain

実際に作ったものはこんなもの。

久しぶりで忘れていた@State

@Stateを使うことで、リアルタイムに画面上の数字を変えることができる。
SwiftUIがリアルタイムに値をチェックしてくれるらしい。
基本的に@Stateは当該Viewとその子Viewにしか適用されないようなので、PrivateをつけるのがAppleの推奨だそうだ。(Webで調べたらそう書いてあったw)

 

すぐに解決したが私の環境だからこそ?のエラーにつまづいた

私の環境は以前にも書いた通り、Macbook Pro 13インチ Earlyである。
Simulatorでプログラムを動かすとファンが唸り出すので、iPhone7を繋げて、シミュレーター代わりに使っている。そうすることで、Simulatorを動かす必要はなく、尚且つiPhoneの実機で動作確認ができるのだ。

しかし、本日の勉強初めのタイミングでプロジェクトを作り直したりしていたら以下のメッセージが表示された。

Showing Recent Issues
Communication with Apple failed: Your maximum App ID limit has been reached. You may create up to 10 App IDs every 7 days.
調べてみたところ、私は無料のDeveloperアカウントを使っているのだが、その場合はiPhoneで試せるプログラムの上限があるとのこと...(涙
上限を調べてみると7日で10アプリまでということ。
お盆休みの合間にもちょくちょく試してみたりして適当にプロジェクトを作っていたのと、本日勉強の続きをする上で名前を間違っていくつか作り直したりしたのが原因なのね...(それ言ってよ〜 by 松重さん
 
一応回避方法としては...
  • 別のAppleIDを使う
  • 有償のDeveloperに切り替える
  • 過去のAppIDを使い回す(方法は調べてないw
  • iPhoneで動作確認するのを諦めてXCodeのSimulatorを使う

ということになるが、今時点で有償は考えていないし、別のAppleID取得についてはセキュリティを考える(複数アカウントを持つということは守るべきアカウントが増えると考えている)と嫌だし使い回しとかなんか面倒そうなのでMacのSimulatorを使うことにした。まぁプログラム自体が小さいからそれほど待たないし。(昔開発していたCのコンパイルとか死ぬほど長かった記憶w)

ということで、自分がまたはまらないに様にするためのメモでした。
大体本読みながらこのブログも書きつつ勉強してきっかり1時間ほど。昨日はお盆明けで大量のメールと会議責めでしんどかったけど徐々に普通に戻ると信じよう。(ちょっと忙しくなることがわかっているのだが信じるものは救われる...汗)