woshidan's loose leaf

ぼんやり勉強しています

iOS9で追加されたMultiTaskはiOS11で下からスライドでDockが出るようになったらしい

iPadのMultiTask概要

  • iOS9から実装されている
  • iPadで画面右端からスライドさせると、 Slide Over のアプリ選択のUIかすでに起動された二つ目のアプリの画面が出てくる
  • Split Viewが実装されているアプリを起動している時に Slide Over のビューを出すと2つのアプリの境界線の中央あたりに||みたいなUIが出てきて、そのUIを引っ張ると2つのViewの画面占有率を変更することができる
    • 対応していないアプリでは|| の線が出ず、元から起動していたアプリはBGになる(詳細後述)
    • Apple製アプリ以外ほぼ対応していない(Gmailなども!)
      • Split Viewに対応しないためには Info.plistUIRequiresFullScreen の設定が必要
      • これをON/OFFにしてライフサイクルとInAppのレイアウト崩れ確認すればOK(対応は既存対応なので優先度低めでOK)
  • Picture in Picture は元のアプリの上に動画などを再生するUI(別のアプリだったり)を起動する機能で、動画のUIが上に起動されているアプリはBGとなる

Split View対応時、Slide Over出した時のライフサイクルはどうなるか

  • Slide Overを出す(こういう状態) -> applicationWillResignActive / 戻す applicationDidBecomeActive
  • Split Viewが有効になるよう、境界線を動かす(こういう状態) -> applicationDidBecomeActive になる

Split View非対応時、Slide Over出した時のライフサイクルはどうなるか

  • このの矢印の箇所にチェックを入れて、ビルドするとSplit Viewがオフになる
  • Split Viewがオフの場合は、Slide Overで二つ目のアプリの画面を出した時、二つのアプリの境界線上に印がつかない(こうなる)
  • Slide Overを出す -> applicationWillResignActive / 戻す applicationDidBecomeActive

iOS11で下からスライドさせてDockを出せるようになったことについて

  • Dockを出すことへのライフサイクルへの影響
    • Dockを出すだけ => 変化なし
    • Dockを出してさらに引っ張ると起動中のアプリ選択画面になる => applicationWillResignActive

参考