magazine.gifiPhone/iPadプログラミングバイブル Swift/iOS8/Xcode6対応

Chapter 1 iOSアプリ作成の基礎

  • 1-1 iPhone/iPadとiOS
    • 1-1-1 iPhone・iPadとiOS
    • 1-1-2 iOS端末の種類
    • 1-1-3 iOSのバージョンと新機能
      • Swift
      • App Extensions
      • Touch ID
      • PhotoKit
      • HelthKit
      • HomeKit
      • CloudKit
      • SceneKit
      • Metal
    • 1-1-4 iOSレイヤー
      • Core Touchレイヤー
      • Mediaレイヤー
      • Core Serviceレイヤー
      • Core OSレイヤー
  • 1-2 開発ツールの準備
    • 1-2-1 iOSアプリの作成に必要なもの
    • 1-2-2 iOSアプリの作成の流れ
    • 1-2-3 Xcodeのインストール
    • 1-2-4 Xcodeの画面構成
      • ツールバー
      • ナビゲータエリア
      • エディタエリア
      • デバッグエリア
      • ユーティリティエリア
  • 1-3 プロジェクトの作成
    • 1-3-1 プロジェクトの作成
    • 1-3-2 プロジェクト内のファイル
    • 1-3-3 プロジェクトの設定
  • 1-4 はじめてのiOSアプリの作成
    • 1-4-1 はじめてのiOSアプリの作成
    • 1-4-2 ソースコードの追加
    • 1-4-3 AppDelegate.swiftの編集
      • import
      • UIApplicationDelegateプロトコルを継承したクラスの定義
    • 1-4-4 ViewController.swiftの編集
      • UIViewControllerクラスを継承したクラスの定義
    • 1-4-5 HelloWorld.swiftの編集
      • UIViewクラスを継承したクラスの定義
    • 1-4-6 レイアウトファイルのビューとビュークラスの関連づけ
    • 1-4-7 iOSシミュレータでの実行
  • 1-5 iOS端末での実行
    • 1-5-1 iOS Developer Programへの登録
    • 1-5-2 プロビジョニングプロファイルの生成
    • 1-5-3 プロジェクトへのプロビジョニングプロファイルの設定
    • 1-5-4 実機での実行

Chapter 2 Swiftの文法

  • 2-1 変数
    • 2-1-1 変数を利用するプログラムの構成
    • 2-1-2 ソースコード
      • VarExクラス
    • 2-1-3 ソースコードの解説
      • ①変数の定義
      • ②値の代入
      • ③算術演算子
      • インクリメントとデクリメント
      • 関係演算子
      • 複合代入演算子
      • 論理演算子
      • 条件演算子
      • ④文字列の生成
      • ⑤文字列の描画
      • Stringクラスの使い方
  • 2-2 クラスとオブジェクト
    • 2-2-1 クラスとオブジェクトを利用するプログラムの構成
    • 2-2-2 ソースコード
      • ObjectExクラス
    • 2-2-3 ソースコードの解説
      • ①オブジェクト型の変数の定義
      • ②オブジェクトの生成
      • ③取得情報フラグの準備
      • ④日付コンポーネントの取得
      • ⑤年月日の取得
  • 2-3 ループ
    • 2-3-1 ループを利用するプログラムの構成
    • 2-3-2 ソースコード
      • LoopExクラス
    • 2-3-3 ソースコードの解説
      • ①for文による計算
      • ②while文による計算
      • ③ループの途中での脱出
  • 2-4 条件分岐
    • 2-4-1 条件分岐を利用するプログラムの構成
    • 2-4-2 条件分岐を利用するプログラムの構成
      • BranchExクラス
    • 2-4-3 ソースコードの解説
      • ①乱数の取得
      • ②if文による計算
      • ③switch文による計算
  • 2-5 配列と連想配列
    • 2-5-1 配列と連想配列を利用するプログラムの構成
    • 2-5-2 ソースコード
      • ArrayExクラス
    • 2-5-3 ソースコードの解説
      • ①配列の生成
      • ②配列の要素の追加
      • ③配列の要素の変更
      • ④配列の要素の取得
      • Arrayクラスの使い方
      • 要素の追加
      • ⑤連想配列の生成
      • ⑥連想配列の要素の追加と変更
      • ⑦連想配列の変更
      • ⑧連想配列の取得
      • Dectionaryクラスの使い方
  • 2-6 クラスの定義
    • 2-6-1 クラスを定義して利用するプログラムの構成
    • 2-6-2 ソースコード
      • ClassExクラス
      • Deviceクラス
    • 2-6-3 ソースコードの解説
      • ①クラスの定義
      • ②プロパティの定義
      • ③メソッドの定義
      • ④イニシャライザの定義
      • プロトコル・構造体・列挙型・タプルの定義
  • 2-7 オプショナル
    • 2-7-1 オプショナルを利用するプログラムの構成
    • 2-7-2 ソースコード
      • OptionalExクラス
    • 2-7-3 ソースコードの解説
      • ①オプショナルな型の変数の定義
      • ②通常の型の変数にオプショナルな型の変数を代入
      • ③オプショナルな型の変数のプロパティの利用
      • ④オプショナルな型の変数のメソッドの利用
    • 2-7-4 オプショナルな型の変数とメソッドの引数

Chapter 3 基本API

  • 3-1 文字列の描画
    • 3-1-1 文字列を描画するプログラムの構成
    • 3-1-2 ソースコード
      • StringExクラス
    • 3-1-3 ソースコードの解説
      • ①フォンとの生成
      • ②色の指定
      • ③画面サイズの取得
      • ④文字サイズの取得
      • ⑤文字列の描画
  • 3-2 イメージの描画
    • 3-2-1 イメージを描画するプログラムの構成
    • 3-2-2 画像ファイルのサイズとフォーマット
    • 3-2-3 画像ファイルの準備
    • 3-2-4 ソースコード
      • ImageExクラス
    • 3-2-5 ソースコードの解説
      • ①画像ファイルの読み込み
      • ②イメージの描画
      • ③イメージの拡大縮小描画
      • ④プロトコルで宣言したイニシャライザ
  • 3-3 図形の描画
    • 3-3-1 図形を描画するプログラムの構成
    • 3-3-2 ソースコード
      • GraphicsExクラス
    • 3-3-3 ソースコードの解説
      • ①グラフィックスコンテキストの取得
      • ②色の指定
      • ③ラインの描画
      • ④四角形の描画
      • ⑤円の描画
  • 3-4 タッチイベントの処理
    • 3-4-1 タッチイベントの処理のプログラムの構成
    • 3-4-2 ソースコード
      • TouchExクラス
    • 3-4-3 ソースコードの解説
      • ①マルチタッチの有効化
      • ②タッチイベント
      • ③タッチオブジェクトの取得
      • ④画面の再描画
      • ⑤タッチ位置の取得
  • 3-5 タイマーの処理
    • 3-5-1 タイマーの処理のプログラムの構成
    • 3-5-2 画像ファイルの準備
    • 3-5-3 ソースコード
      • TimerExクラス
    • 3-5-4 ソースコードの解説
      • ①タイマーの生成
      • ②タイマーの停止
      • ③定期処理

Chapter 4 ユーザーインタフェース

  • 4-1 ラベルとイメージビュー
    • 4-1-1 ラベルとイメージビューのプログラムの構成
    • 4-1-2 画像ファイルの準備
    • 4-1-3 ソースコード
      • ViewControllerクラス
    • 4-1-4 ソースコードの解説
      • ①ラベルの生成
      • ②ラベルとテキストの幅と高さをあわせる
      • ③UI部品の配置
      • ④イメージビューの生成
  • 4-2 ボタンとアラート
    • 4-2-1 ボタンとアラートのプログラムの構成
    • 4-2-2 画像ファイルの準備
    • 4-2-3 ソースコード
      • ViewControllerクラス
    • 4-2-4 ソースコードの解説
      • ①ボタンの生成
      • ②タグの指定
      • ③イベントリスナーの指定
      • ④イメージボタンの生成
      • ⑤アラートの生成
      • ⑥アクションの追加
      • ⑦アラートの表示
      • ⑧Yes/Noダイアログの表示
      • ⑨アクションシートの表示
  • 4-3 テキストフィールド
    • 4-3-1 テクストフィールドのプログラムの構成
    • 4-3-2 ソースコード
      • ViewControllerクラス
    • 4-3-3 ソースコードの解説
      • ①テキストフィールドの生成
      • ②テキストフィールドのデリゲート
  • 4-4 テキストビュー
    • 4-4-1 テキストビューのプログラムの構成
    • 4-4-2 ソースコード
      • ViewControllerクラス
    • 4-4-3 ソースコードの解説
      • ①テキストビューの生成
      • ②テキストビューのデリゲート
  • 4-5 スライダーとスイッチ
    • 4-5-1 スライダーとスイッチのプログラムの構成
    • 4-5-2 ソースコード
      • ViewControllerクラス
    • 4-5-3 ソースコードの解説
      • ①スライダーの生成
      • ②スイッチの生成
  • 4-6 WEBビュー
    • 4-6-1 Webビューのプログラムの構成
    • 4-6-2 ソースコード
      • ViewControllerクラス
    • 4-6-3 ソースコードの解説
      • ①Webビューの生成
      • ②インジケータの表示/非表示
      • ③HTMLの読み込み
      • ④Webビューのデリゲート
      • ⑤通信中の場合は再度URLジャンプさせない
  • 4-7 マップビュー
    • 4-7-1 マップビューのプログラムの構成
    • 4-7-2 ソースコード
      • ViewControllerクラス
    • 4-7-3 ソースコードの解説
      • ①マップビューの生成
      • ②位置の値の用意
      • ③ズームの値の用意
      • ④位置とズームの値の指定
      • ⑤マップビューのデリゲート
  • 4-8 ナビゲーションとテーブルビュー
    • 4-8-1 ナビゲーションとテーブルビューのプログラムの構成
    • 4-8-2 ソースコード
      • AppDelegateクラス
      • ViewControllerクラス
    • 4-8-3 ソースコードの解説
      • ①ナビゲーションコントローラの生成
      • ②ファイルとフォルダ階層の定義
      • ③ナビゲーションバーのボタンの追加
      • ④テーブルビューの生成
      • ⑤ナビゲーションバーのタイトルの指定
      • ⑥テーブルビューのデリゲート
      • ⑦テーブルビューのデータソース
      • ⑧テーブルのセルの生成
      • ⑨テーブルのセルの設定
      • ⑩テーブルのセルの選択解除
      • ⑪ナビゲーションの遷移
  • 4-9 ピッカービュー
    • 4-9-1 ピッカービューのプログラムの構成
    • 4-9-2 ソースコード
      • ViewControllerクラス
    • 4-9-3 ソースコードの解説
      • ①フォントファミリー名の取得
      • ②配列のソート
      • ③フォント名の取得
      • ④ピッカービューの生成
      • ⑤ピッカービューのデリゲート
      • ⑥ピッカービューのデータソース
  • 4-10 Interface BuilderによるUIデザイン
    • 4-10-1 Interface BuilderによるUIデザインを利用するプログラムの構成
    • 4-10-2 ソースコード
      • ViewControllerクラス
      • ①Interface BuilderのUI部品と関連づけるプロパティ
      • ②Interface BuilderのUI部品のイベントと関連づけるメソッド
    • 4-10-3 Interface Builderの画面構成
      • ドキュメントアウトライン
      • キャンバス
      • ドキュメントアウトライン開閉ボタン
      • 画面サイズボタン
      • 制約ボタン
    • 4-10-4 AutoLayout
      • Align
      • Pin
      • Resolve Auto Layout Issues
      • Resizing Behavior
      • ラベルの配置
    • 4-10-5 Interface BuilderによるUIデザイン
      • ボタンの配置
      • 制約の追加
      • ラベルとプロパティの関連づけ
      • ボタンのイベントとメソッドの関連づけ
  • 4-11 Interface Builderによるビュー遷移
    • 4-11-1 Interface Builderのビュー遷移を利用するプログラムの構成
    • 4-11-2 ソースコード
      • ViewControllerクラス
      • AboutViewControllerクラス
    • 4-11-3 ソースコードの解説
      • ①ビュー遷移時に呼ばれるメソッドの実装
      • ②ビューの戻り時に呼ばれるメソッドの実装
    • 4-11-4 StorybordによるUIデザイン
      • メイン画面のビューコントローラの設定
      • アバウト画面のビューコントローラの追加
      • 制約の追加
      • セグエの追加
      • Exitの追加

Chapter 5 データの読み書きと通信

  • 5-1 ファイルの読み書き
    • 5-1-1 ファイルの読み書きを行うプログラムの構成
    • 5-1-2 iOSアプリから読み書き可能なフォルダ
    • 5-1-3 ソースコード
      • ViewControllerクラス
    • 5-1-4 ソースコードの解説
      • ①文字列をバイトに配列変換
      • ②バイト配列を文字列に変換
      • ③バイト配列の書き込み
      • ④バイト配列の読み込み
  • 5-2 プリファレンスの読み書き
    • 5-2-1 プリファレンスの読み書きを行うプログラムの構成
    • 5-2-2 ソースコード
      • ViewControllerクラス
    • 5-2-3 ソースコードの解説
      • ①プリファレンスの書き込み
      • ②プリファレンスの読み込み
  • 5-3 HTTP通信
    • 5-3-1 HTTP通信を行うプログラムの構成
    • 5-3-2 テキストファイルの準備
    • 5-3-3 ソースコード
      • ViewControllerクラス
    • 5-3-4 ソースコードの解説
      • ①HTTP通信
      • ②インジケーターの生成
      • ③インジケータのアニメーション
  • 5-4 Multipeer Connectivity
    • 5-4-1 Multipeer Connectivityを利用するプログラムの構成
    • 5-4-2 操作手順
    • 5-4-3 ソースコード
      • ViewControllerクラス
    • 5-4-4 ソースコードの解説
      • ①ピアIDの生成
      • ②セッションの生成
      • ③セッションのデリゲート
      • ④アドバタイズの生成と開始
      • ⑤ブラウズの開始
      • ⑥ブラウズのデリゲート
      • ⑦メッセージの送信
      • ⑧テキストフィールドの更新
      • ⑨Grand CentralDispatch
  • 5-5 メールの送信
    • 5-5-1 メールの送信を行うプログラムの構成
    • 5-5-2 画像ファイルの準備
    • 5-5-3 ソースコード
      • ViewControllerクラス
    • 5-5-4 ソースコードの解説
      • ①メール送信可能かどうかのチェック
      • ②メールビューコントローラの生成
      • ③メールの添付ファイルの追加
      • ④メールコントローラのデリゲート
  • 5-6 iCloud
    • 5-6-1 iCloudを利用するプログラムの構成
    • 5-6-2 iCloudの保存データ形式
      • キーバリュー
      • ドキュメント
    • 5-6-3 iCloudの有効化
    • 5-6-4 ソースコード
      • ViewControllerクラス
      • ICloudDocumentクラス
    • 5-6-5 ソースコードの解説
      • ①iCloudへのキーバリューの書き込み
      • ②iCloudからのキーバリューの読み込み
      • ③iCloudのドキュメントのURLの生成
      • ④iCloudへのドキュメントの書き込み
      • ⑤iCloudからのドキュメントの読み込み
      • ⑥ドキュメント読み込み時の処理
      • ⑦ドキュメント書き込み時の処理

Chapter 6 デバイス制御

  • 6-1 センサー
    • 6-1-1 センサーを利用するプログラムの構成
    • 6-1-2 ソースコード
      • ViewControllerクラス
    • 6-1-3 ソースコードの解説
      • ①センサー情報の通知の開始
      • ②端末の加速度の取得
      • ③加速度にローパスフィルターをあてる
      • ④端末の傾きの取得
      • ⑤端末の向きの通知開始
      • ⑥端末の向きの通知受信時の処理
  • 6-2 位置情報
    • 6-2-1 位置情報を利用するプログラムの構成
    • 6-2-2 ソースコード
      • ViewControllerクラス
    • 6-2-3 Info.plist
    • 6-2-4 ソースコードの解説
      • ①ロケーションマネージャーの生成
      • ②位置情報通知の開始と停止
      • ③方位情報取得の開始と停止
      • ④ロケーションマネージャーのデリゲート
      • ⑤位置情報の取得
      • ⑥方位情報の取得
  • 6-3 カメラとフォトアルバム
    • 6-3-1 カメラとフォトアルバムを利用するプログラムの構成
    • 6-3-2 ソースコード
      • ViewControllerクラス
    • 6-3-3 ソースコードの解説
      • ①カメラとフォトアルバムの利用可能チェック
      • ②イメージピッカーの生成
      • ③ナビゲーションのデリゲート
      • ④イメージピッカーのデリゲート
      • ⑤イメージのフォトアルバムへの書き込み
  • 6-4 アドレス帳
    • 6-4-1 アドレス帳を利用するプログラムの構成
    • 6-4-2 ソースコード
      • ViewControllerクラス
    • 6-4-3 ソースコードの解説
      • ①URLスキームのオープン
      • ②ABAddressBookオブジェクトんぼ取得
      • ③アクセス許可状態の確認
      • ④アドレス帳のレコード群の取得
      • ⑤レコードからの名前の取得
      • ⑥レコードからの電話番号の取得
      • ⑦テーブルビューの更新
  • 6-5 バックグラウンドタスク
    • 6-5-1 バックグラウンドタスクを利用するプログラムの構成
    • 6-5-2 ソースコード
      • AppDelegateクラス
      • ViewControllerクラス
    • 6-5-3 ソースコードの解説
      • ①バックグラウンドタスクの開始を通知
      • ②バックグラウンドタスクの終了を通知
      • ③バックグラウンドタスクの処理の実行
      • ④ローカルノティフィケーションの利用許可の取得
      • ⑤ローカルノティフィケーションの表示
  • 6-6 App Extensions - Action
    • 6-6-1 App ExtensionsのActionを利用するプログラムの構成
    • 6-6-2 「App Extension」のターゲットの生成
    • 6-6-3 画像ファイルの準備
    • 6-6-4 ソースコード
      • ViewControllerクラス
      • ActionViewControllerクラス
    • 6-6-5 ActionExのソースコードの解説
      • ①アクティビティビューを開く
      • ②NSItemProviderオブジェクトの取得
      • ③画像の取り出し
    • 6-6-6 ActionExtのソースコードの解説
      • ④アクティビティアイテムからの画像の取り出し
      • ⑤イメージの反転
      • ⑥Extensionアイテムを生成してHome appに返す
  • 6-7 App Extensions - Today
    • 6-7-1 App ExtensionsのTodayを利用するプログラムの構成
    • 6-7-2 「App Extensionのターゲットの生成
    • 6-7-3 App Groupの有効化
    • 6-7-4 ソースコード
      • ViewControllerクラス
      • TodayViewControllerクラス
    • 6-7-5 TodayExのソースコードの解説
      • ①App Groupの共有領域に書き込み
    • 6-7-6 TodayExtのソースコードの解説
      • ②ラベルの定義
      • ③共有領域の変更時に通知
      • ④共有領域の変更時に呼ばれるメソッド
      • ⑤ウィジェットの推奨サイズの指定
      • ⑥App Groupの共有領域からの読み込み
      • ⑦ウィジェットの画面更新時に呼ばれるメソッド
  • 6-8 TouchID認証
    • 6-8-1 Touch ID認証を利用するプログラムの構成
    • 6-8-2 ソースコード
    • 6-8-3 ソースコードの解説
      • ①認証コンテキストの生成とTouch ID認証が利用可能かどうか
      • ②Touch ID認証の開始

Chapter 7 サウンドとムービーとアニメーション

  • 7-1 サウンドの再生
    • 7-1-1 サウンドを再生するプログラムの構成
    • 7-1-2 サウンドファイルの準備
    • 7-1-3 ソースコード
      • ViewControllerクラス
    • 7-1-4 ソースコードの解説
      • ①リソースURLの生成
      • ②オーディオプレーヤーの生成
      • ③サウンドの再生と停止
      • ④ボリューム操作
  • 7-2 ムービーの再生
    • 7-2-1 ムービーを再生するプログラムの構成
    • 7-2-2 ムービーファイルの準備
    • 7-2-3 ソースコード
      • ViewControllerクラス
    • 7-2-4 ソースコードの解説
      • ①ムービープレイヤーの生成
      • ②ムービーの再生
      • ③ボリュームビューの生成
  • 7-3 UIViewビューアニメーション
    • 7-3-1 UIViewアニメーションを利用する
    • 7-3-2 画像ファイルの準備
    • 7-3-3 ソースコード
      • ViewControllerクラス
    • 7-3-4 ソースコードの解説
      • ①アニメーション前の平行緯度・回転角度・透明度の指定
      • ②UIViewアニメーションの設定
      • ③UIViewアニメーションのデリゲートの指定
      • ④アニメーション後の位置・回転角度・透明度の指定
      • ⑤UIViewアニメーションの実行
      • ⑥フレーム指定によるアニメーション
  • 7-4 レイヤーアニメーション
    • 7-4-1 レイヤーアニメーションを利用するプログラムの構成
    • 7-4-2 画像ファイルの準備
    • 7-4-3 ソースコード
      • ViewControllerクラス
    • 7-4-4 ソースコードの解説
      • ①レイヤーの生成
      • ②ビューへのレイヤーの追加
      • ③レイヤーアニメーションの生成
      • ④3次元のアフィン変換
      • ⑤レイヤーへのレイヤーアニメーションの追加
  • 7-5 トランジション
    • 7-5-1 トランジションを利用するプログラムの構成
    • 7-5-2 画像ファイルの準備
    • 7-5-3 ソースコード
      • ViewControllerクラス
    • 7-5-4 ソースコードの解説
      • ①トランジションアニメーションの設定
      • ②ビューの変更

Chapter 8 ゲーム

  • 8-1 SpriteKit
    • 8-1-1 SpriteKitを利用するプログラムの構成
    • 8-1-2 SpriteKitのプロジェクトの作成
    • 8-1-3 画像ファイルの準備
    • 8-1-4 ソースコード
      • AppDelegateクラス
      • GameViewControllerクラス
      • GameSceneクラス
    • 8-1-5 ソースコードの解説
      • ①SpriteKitのビューの設定
      • ②シーンの追加
      • ③シーンの宣言と実装
      • ④シーンの設定
      • ⑤ラベルの追加
      • ⑥スプライトの追加
      • ⑦スプライトのアクションの追加
  • 8-2 シーン間のトランジション
    • 8-2-1 シーン間のトランジションを行うプログラムの構成
    • 8-2-2 画像ファイルの準備
    • 8-2-3 ソースコード
      • GameViewControllerクラス
      • GameSceneクラス
    • 8-2-4 ソースコードの解説
      • ①トランジション種別の指定
      • ②トランジションオブジェクトの生成
      • ③トランジション付きのシーン追加
  • 8-3 物理シミュレーション
    • 8-3-1 物理シミュレーションを行うプログラムの構成
    • 8-3-2 画像ファイルの準備
    • 8-3-3 ソースコード
      • GameViewControllerクラス
      • GameSceneクラス
    • 8-3-4 ソースコードの解説
      • ①衝突判定の指定
      • ダイナミックボリューム
      • スタティックボリューム
      • エッジ
      • ②バーの左右移動アクションの追加
      • ③ボール追加アクションの追加
      • ④ボールが画面下に落ちたら削除
  • 8-4 SceneKit
    • 8-4-1 SceneKitを利用するプログラムの構成
    • 8-4-2 画像ファイルの準備
    • 8-4-3 3Dモデルの準備
    • 8-4-4 ソースコード
      • AppDelegateクラス
      • GameViewControllerクラス
    • 8-4-5 ソースコードの解説
      • ①SceneKitのビューの設定
      • ②カメラの生成とシーンへの追加
      • ③光源の生成とシーンへの追加
      • ④3Dモデルの読み込みとシーンへの追加
      • ⑤マルテリアの生成とジオメトリへの追加
      • ⑥タップジェスチャーの追加
      • ⑦タップしたノードの取得
      • ⑧マテリアルへのアニメーション追加

Chapter 9 アプリケーションの作成

  • 9-1 パズルゲーム
    • 9-1-1 パズルゲームのプログラムの構成
    • 9-1-2 画像ファイルの準備
    • 9-1-3 ソースコード
      • ViewControllerクラス
    • 9-1-4 ソースコードの解説
      • ①ゲーム画面XY座標とスケールの指定
      • ②ピース画像とピースは位置情報
      • ③タッチ位置からピースの列番号と行番号を求める
      • ④空きマスの列番号と行番号を求める
      • ⑤ピースのスライド
      • ⑥ピースの移動アニメとクリアチェック
      • ⑦ゲームのクリア判定
      • ⑧シャッフルの実行
    • 9-1-5 画面の向きとアプリ名とアイコンの設定
      • 画面の向き
      • アプリ名
      • アイコン
      • 起動画面
  • 9-2 アクションゲーム
    • 9-2-1 アクションゲームのプログラムの構成
    • 9-2-2 画像ファイルの準備
    • 9-2-3 ソースコード
      • ViewControllerクラス
      • ActionViewクラス
      • Graphicsクラス
    • 9-2-4 ソースコードの解説
      • ①シーンの遷移
      • ②ブロックのスクロール
      • ③新規ブロックの高さの設定
      • ④ジャンプのコントロール
      • ⑤Graphicsクラスの利用
    • 9-2-5 画面の向きとアプリ名とアイコンの設定
      • 画面の向き
      • ステータスバーの非表示
      • アプリ名
      • アイコン
      • 起動画面
  • 9-3 シューティングゲーム
    • 9-3-1 シューティングゲームのプログラムの構成
    • 9-3-2 画像ファイルの準備
    • 9-3-3 ソースコード
      • GameViewControllerクラス
      • GameSceneクラス
    • 9-3-4 ソースコードの解説
      • ①ゲーム画面のサイズの指定
      • ②シーンの遷移
      • ③テクスチャの生成と設定
      • ④隕石レイヤーと弾レイヤーの生成
      • ⑤隕石追加処理の追加
      • ⑥隕石と弾と爆発の追加
      • ⑦弾と隕石の定期処理
      • ⑧2点の距離の計算
    • 9-3-5 画面の向きとアプリ名とアイコンの設定
      • 画面の向き
      • アプリ名
      • アイコン
      • 起動画面
  • 9-4 ロールプレイングゲーム
    • 9-4-1 ロールプレイングゲーム
    • 9-4-2 画像ファイルの準備
    • 9-4-3 ソースコード
      • ViewControllerクラス
      • RPGViewクラス
      • Graphicsクラス
    • 9-4-4 ソースコードの解説
      • ①シーンの遷移
      • ②マップデータ
      • ③勇者パラメータ
      • ④敵パラメータ
      • ⑤敵出現の計算
      • ⑥攻撃の計算
      • ⑦防御の計算
      • ⑧逃げるの計算
    • 9-4-5 画面の向きとアプリ名とアイコンの設定
      • 画面の向き
      • ステータスバーの非表示
      • アプリ名
      • アイコン
      • 起動画面
  • 9-5 Twitterクライアント
    • 9-5-1 Twitterクライアントのプログラムの構成
    • 9-5-2 ソースコード
      • ViewControllerクラス
      • Statusクラス
    • 9-5-3 ソースコードの解説
      • ①Twitterのアカウント情報の取得
      • ②タイムラインの読み込み
      • ③JSONのパース
      • ④JSONをパースしたデータをStatusクラスの配列に変換
      • ⑤つぶやきの送信
    • 9-5-4 Interface BuilderによるUIデザイン
      • UI部品の配置
      • バーボタンアイテムの種別設定
      • テーブルビューとプロパティの関連づけ
      • テーブルビューのイベントよメソッドの関連づけ
      • バーボタンアイテムのイベントとメソッドの関連づけ
    • 9-5-5 画面の向きとアプリ名とアイコンの設定
      • 画面の向き
      • アプリ名
      • アイコン
      • 起動画面

Appendix

  • A-1 Playgroundによるプログラム試行
    • A-1-1 Playgroundのプロジェクトの作成
    • A-1-2 Playgroundの画面構成
    • A-1-3 自動実行の機能を試す
    • A-1-4 変数の中身をグラフで見る機能を試す
    • A-1-5 ビューを表示する機能を試す
    • A-1-6 イメージを表示する機能を試す

メソッド・イニシャライザ・プロパティ・関数 索引クラス・プロパティ・プロトコル 索引用語索引
コラム目次

  • Core Data
  • Git
  • プロジェクトを開く
  • MVCアーキテクチャ
  • ソースコードの行番号の表示
  • SwiftとObjective-Cの違い
  • 絵文字の利用
  • コンソール出力
  • セミコロンの使い方
  • クイックヘルプ
  • ラベルの指定
  • エイリアスの使い方
  • プロパティと定数
  • プロパティとメソッドの修飾子
  • Computed Properties
  • プロパティとlazy
  • xibファイル
  • リソースからのバイト配列の読み込み
  • バイブレーション
  • Twitter API