Controllerの設定。画面遷移のアニメーションを変更する。Controllerの設定。画面遷移のアニメーションを変更する。本記事ではUIPageViewController(以下、ページビューコントローラー)のアトリビュートインスペクタの設定について説明する。以降の手順を開始する前のXcodeプロジェクトをGitHubに置いたので、試してみる人はご利用されたし。事前準備では、ストーリーボードに4つのビューコントローラーを配置し、ページビューコントローラーを使って画面遷移できるようにしておいた。Navigation画面遷移するときのページの移動方向を「Horizontal(水平方向)」と「Vertical(垂直方向)」から選択する。以下は「Vertical(垂直方向)」に設定したときのプレイ動画。画面を縦方向にドラッグしてページを移動する。Curl(ページめくり)」と「Scroll(スクロール)」から選択する。以下は「Scroll(スクロール)」に設定したときのプレイ動画。Viewを使ったような動きをビューコントローラーをまたいで行えるのが嬉しい。Spacingページとページの余白をポイントで指定する。Styleが「Scroll」のときのみ有効になる。以下は「160」に設定したときのプレイ動画。Location1つのビューコントローラーを本の1ページとしたときの本の背の位置を「None」、「Min」、「Mid」、「Max」から選択する。Curl」のときのみ有効になる。Navigationが「Horizontal」のとき、Minは画面左端、Maxは画面右端に本の背があるようにページめくりのアニメーションが行われる。Navigationが「Vertical」のときは、Minは画面上端、Maxは画面下端が本の背になる。Locationを「Max」に設定したときのプレイ動画。「Mid」は画面中央が本の背になる。下図のようにNavigationが「Horizontal」のときは水平方向の中央位置が本の背になる。Navigationが「Vertical」のときは垂直方向の中央位置が本の背になる。Sidedにチェックを入れてページを両面にする必要がある。しなければ以下のエラーが発生する。page1画面に2つのビューコントローラーが表示されるので、以下コードの【変更箇所】のようにsetViewControllersメソッドの引数に2つのビューコントローラーを与えるように変更する必要がある。//1ページ目のビューコントローラーを取得する。//【変更箇所】2ページ目のビューコントローラーを取得する。//【変更箇所】ビューコントローラーを表示する。//データ提供元に自分を設定する。//現在のビューコントローラーのインデックス番号を取得する。//前ページのビューコントローラーを返す。//現在のビューコントローラーのインデックス番号を取得する。//次ページのビューコントローラーを返す。{//1ページ目のビューコントローラーを取得する。storyboard!.instantiateViewControllerWithIdentifier(idList[0])//【変更箇所】2ページ目のビューコントローラーを取得する。storyboard!.instantiateViewControllerWithIdentifier(idList[1])//【変更箇所】ビューコントローラーを表示する。completion:nil)//データ提供元に自分を設定する。{//現在のビューコントローラーのインデックス番号を取得する。{//前ページのビューコントローラーを返す。{//現在のビューコントローラーのインデックス番号を取得する。{//次ページのビューコントローラーを返す。0}}また、ページを1回ドラッグすると「右ドラッグ時の呼び出しメソッド」または「左ドラッグ時の呼び出しメソッド」が2回連続で呼ばれるので、次の画面で表示するビューコントローラーを1つずつ返す。これに関しては今回実装では変更無しだが、もしビューコントローラーの総数が奇数だった場合は以下のエラーが発生する。Locationを「Mid」に設定したときのプレイ動画。画面の見易さを考慮してiPadの横画面でテストした。iPhoneの場合は縦長に縮小されて表示される。モーダル表示の重ね方や登場シーンを設定する。...【Swift】制約を変更してテキストフィールドやテキストビューがキーボードと被らないようにする方法。Viewを使って入力欄とキーボードが被らないようにする方法。Controllerの使い方。ページをめくって画面遷移をする。Controlを使ってページを移動する方法。コメントをキャンセルメールアドレスが公開されることはありません。