トマシープが学ぶ

Unity/VR/AR/デザイン好きのミーハー 記事内容は自分用のメモです

iPhoneアプリ開発の参考書をやっていく

 この本を借りました。

これからつくる iPhoneアプリ開発入門 ~Swiftではじめるプログラミングの第一歩~

これからつくる iPhoneアプリ開発入門 ~Swiftではじめるプログラミングの第一歩~

 

 iPhoneアプリの参考書をやるのは3回目ぐらいですが、記事にするのは初めてです。

 毎回swift+Xcodeでやっていますが、なかなか身につかない・・・というか自分で作りたいものがないので、参考書やったらやったきりになってしまう。

 ちなみに過去にやったのはこの二つです。

改訂版 No.1スクール講師陣による 世界一受けたいiPhoneアプリ開発の授業 [iOS 9&Xcode 7&Swift 2対応]

改訂版 No.1スクール講師陣による 世界一受けたいiPhoneアプリ開発の授業 [iOS 9&Xcode 7&Swift 2対応]

 
デザイナーのためのiPhoneアプリUI/UX設計 (Web Professional Books)

デザイナーのためのiPhoneアプリUI/UX設計 (Web Professional Books)

 

MainViewの位置 

プロジェクトを作って、ボタンとか置いていく場所

mainstoryboardからViewを開く

f:id:bibinbaleo:20170914152514p:plain

f:id:bibinbaleo:20170914152619p:plain

画像はassts.~フォルダの中に入れたら、右下の所に出る。

f:id:bibinbaleo:20170914152510p:plain

パーツ配置の制約

バイスによって画面の大きさが異なるが、それに対応するための制約.右下のマークから行う

整列

f:id:bibinbaleo:20170914205827p:plain

余白設定

f:id:bibinbaleo:20170914153136p:plain

余白を設定したらTabを押し赤くなったら制約成功。

変更は右側のインスペクタから行う。

f:id:bibinbaleo:20170914153525p:plain

コードと結びつける

xcodeではボタンの挙動などを書くときにコードと線で結びつけて作ります。

f:id:bibinbaleo:20170914164753p:plain

コードは右上の丸々マークで出現します。

結びつけるときはCtrlを押しながらコード部分にドラッグ

f:id:bibinbaleo:20170914164930p:plain

Connectionの種類と変数名などを設定します。ボタンの場合はAction

関連付けを間違ったときは、View Cntrollerを選択、Ctrlキーを押しながらもう一度クリック、関連付けのバツを押す。

f:id:bibinbaleo:20170914170446p:plain

f:id:bibinbaleo:20170914170452p:plain

テキストフィールド

テキストフィールドの設定で、色々選べる。ClearButtonは入力時のばつ印

f:id:bibinbaleo:20170915170554p:plain

キーボードタイプは数字だけ表示したり・・・など選べる。

f:id:bibinbaleo:20170915170551p:plain

スクリプト

viewDidLoad()が最初に一回だけ実行される場所

blog.livedoor.jp

 

arc4random_uniform(3)で0.1.2をランダム

qiita.com

 

repeat-while文

hajihaji-lemon.com

 

varが変数letが定数

mpon.hatenablog.com

 

do try catchでエラーが出た場合の処理をして赤字回避

f:id:bibinbaleo:20170915151938p:plain

qiita.com

 

if letでアンラップ

mzgkworks.hateblo.jp

 

schedulerTimerで一定間隔で処理

qiita.com

 

メソッドにカーソルを当てて、optionキーで?マーク出現>クリックで因数の説明をしてくれる。

f:id:bibinbaleo:20170919165332p:plain

 

変数の最後に?をつけると「オプショナル」という。中身がないときに使う。

qiita.com

シミュレーター

シミュレーターがすごく重かったのですが、iPhone 5にして、かつDebug>Slow Animationsのチェックを外したら多少軽くなりました。

終わるのはコマンド+R

画面サイズの確認だけならプレビュー機能からもみれる。

f:id:bibinbaleo:20170914220711p:plain

謎のラインナップ

f:id:bibinbaleo:20170914220750p:plain

起動ロゴ・アイコン

起動時ロゴはLaunchScreen.storyboardから普通の画面のように作って、

f:id:bibinbaleo:20170914210444p:plain

設定でLaunch Screen FileをLaunchScreen.storyboardに変える。

f:id:bibinbaleo:20170914210434p:plain

アイコンはこれで各種サイズに変換する。 

makeappicon.com

 そしてそれをプロジェクトフォルダの中のAssets.xcassets/AppIcon.appiconsetに入れる

searchText.placeholder="お菓子の名前を入力してください"で検索欄の背景にこの文字が表示される

画面遷移 

EditorメニューからEmbed In>Navigation Controller

f:id:bibinbaleo:20170917173529p:plain

追加される

f:id:bibinbaleo:20170917173527p:plain

画面の上に遷移バーが表示される。

f:id:bibinbaleo:20170917193747p:plain

もう一つの画面はView Controllerを追加することで得られる。

f:id:bibinbaleo:20170917194726p:plain

遷移の仕方はCtrlを押すながらドラッグすることで選択できる。

f:id:bibinbaleo:20170917194947p:plain

qiita.com

CoreImage

画像にエフェクトをかけたり、QRコード解析や顔検出もできる。

developer.apple.com

qiita.com

API

www.sysbird.jp

http://www.sysbird.jp/webapi/?apikey=guest&keyword=カレー味&format=json&max=10

と打ち込むとこんな感じで帰ってくる。

f:id:bibinbaleo:20170929182913p:plain

これを使って人間が読める形にする

lab.syncer.jp

f:id:bibinbaleo:20170929183110p:plain

 

qiita.com

最後に

またやってしまった・・・

何も考えず、説明も読まずにただひたすらにコードを移して行くだけの行為

何も成長できませんでした.

インスタンスとかアンラップがなんなのかもよくわかってない。

もうswiftやめよう。unityに生きたい