Swiftの勉強(1日目)

3日かけて詳細! Swift 3 iPhoneアプリ開発 入門ノート サポートサイトをやることにしました。
Flasherにはお馴染みと思われる、大重さんの本です。

計画

「Part 1: 概要」「Part 2: Swift シンタックス」「Part 3: 実践入門」という3部構成になっているので、1 -> 3(一部) -> 2 の順番で進めていこうと思います。

Part 2を後回しにしたのは、シンタックスを詳しく把握していなくても他のPartは進められそうだったから。
Part 3を一部だけにしたのは、すぐには使わなそうな機能の説明もけっこう含まれていそうだから。

初日やったこと

Part 1: 概要

何も知らないので、まずはここから。

  • Xcodeについて
    • プロジェクト
    • ワークスペース、各ビューの説明
    • 行番号の表示、Code folding
    • 便利ショートカット
  • シュミレーター操作
  • サンプルつくり
    • ライブラリ
    • 関連づけ
  • Playground
    • グラフ

Part 3: 実践入門

各UIの利用方法を把握しつつ、Xcodeの使い方についても習得できます。 Viewの構造や、シーンの扱い方なども。

Ch 11 オートレイアウト

  • 整列のやり方
    • Align
    • Add New Constraints
  • あとから修正できる
    • Resolve Auto Layout …

Ch 12 アシスタントエディタとUI部品の使い方

アシスタントエディタ

  • 使い方(結び付け方)
  • 結び付けを消す場合は右クリor Connections inspector
  • Connection -> Outlet or Action

UILabel

  • Attributesみればだいたいわかる

UIButton

  • 画像、背景画像
  • コード上での生成方法
    • ボタンタイプ
  • イベントリスナーの設定
  • 背景画像のスライス

UIStepper UISwitch UISegmentedControl UISlider

  • (すっとばし)

UITextField

  • 各種設定内容
    • キーボード種類
    • クリアボタンの表示、など
  • デリゲート処理について
    • UITextFieldDelegate
  • キーボードをさげるために
    • Tap Gesture Recognizer
    • 改行で閉じる

UIPickerView

  • (すっとばし)

UIのクラス継承図

  • Attributesインスペクタでは固有の設定が一番上に表示される
  • カスタム設定について

Ch 13 ビューと画像

ビューの作成と表示

画像

  • UIImageViewUIImage
  • UIImageView
    • UIImageView(frame: CGRect(…))
  • UIImage
    • UIImage(named:)
  • 背景画像にパターン
    • view.backgroundColor = UIColor(patternImage: UIImage)

座標と領域

  • center(CGPoint型) frame(CGRect型) bound(CGRect型)
  • viewDidLayoutSubviews
    • viewDidLoadより前に実行
  • frame
    • origin(CGPoint型), size(CGSize型)
    • minX midX maxX width heightなども利用できる(取得のみ)
  • convert

UIStackView

  • HorizontalとVertical
    • 切り替え可能
  • Stackツールボタン
  • コードでの書き方

UITableView

  • UITableViewDataSourceUITableViewDelegate
  • UITableViewDataSource
    • セクションごとの行数を決める
    • セルを作る
    • セクションのタイトルを決める
    • セクションの個数を決める
  • UITableViewDelegate
    • タップしたら内容を表示

UIScrollView

  • 配置しやすくするために一旦縦長のViewにする
  • 実行時
    • scrollViewのframeを設定(画面サイズを利用)
    • scrollView.contentSizeを設定(コンテンツのboundsを利用)
  • キーボードに合わせて、画面をスクロール
    • 詳細はコード確認を (uiScrollView_keyboard.xcodeproj)

Ch 14 シーンの作成と移動

  • (ざっと読み)

Ch 15 - Ch 19

  • アニメーション(ざっと読み)
  • フィンガーアクション(ざっと読み)
  • 図形の描画(ざっと読み)
    • 矩形、角丸、線、弧
  • データの保存(ざっと読み)
  • バイスの機能(すっとばし)

まとめ

いい本です。ありがたいことやで。