iOS

[Swift]UIPageViewControllerを使ってみよう!

投稿日:

はじめに

こんにちはnukkyです。
以前コメントにてUIPageViewControllerの使い方がわからないとのコメントを頂いたので簡単に使い方を紹介したいと思います。

前提条件

Xcode 9.1
iOS 11 Simulator
Swift 4.0

 

UIPageViewControllerとは

簡単に説明するとUIViewControllerを複数同等な関係性で配置でき、それをスワイプ操作で遷移させられるものです、ものすごくざっくりいうとtabbarのtabが無いような形です。

 

実装

ViewControllerを準備

今回は3画面でサンプルを作成したいと思います。
3つ適当なViewControllerをファイルとStoryBoardに用意してください。
今回サンプルではFirstViewController、SecondViewController、ThirdViewControllerを用意したものとしてコードを書いていきます。

UIPageViewControllerを準備

まずUIPageViewControllerクラスを継承したファイルを作成してください。
今回のサンプルコードではPageViewControllerとしています。

StoryboardにUIPageViewControllerを作成しPageViewController関連付けをしてください。
このStoryboardにはFirstViewController、SecondViewController、ThirdViewControllerが用意されているのが前提とします。

最初の画面を設定

起動時にFirstViewControllerが表示されるように設定したいと思います。

setViewControllersでgetSecondもしくはgetThirdを行うことで最初に表示する画面をFirstViewController以外にすることも可能です。

UIPageViewControllerDataSourceの編集

UIPageViewControllerDataSourceを編集し画面を切り替えの設定を行います。

現在の画面を判断しpageViewController(___After_)、pageViewController(___before_)メソッドで適切な画面を返すようにしています。今回はループをしないようにnilを返している箇所もありますがここでViewControllerを返すことで画面をループさせることも可能です。

 

さいごに

かなり駆け足でしたがUIPageViewControllerの基礎的な使い方の紹介になります。ちょっと知識がないと敷居が高いように感じますが使うだけならこのように結構簡単にいけますし、使いどころもあると思うので是非使ってみてください。

blog-page_footer_336




blog-page_footer_336




-iOS
-

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

[Swift]プロトコルの拡張で既定値を設定する。

1 はじめに2 プロトコルの拡張について2.1 プロトコルに既定値を設定2.2 プロトコルを設定したクラスの作成2.3 制約をつけてプロトコルに既定値を設定3 さいごに4 おすすめ書籍 はじめに こん ...

【Swift】Tesseract-OCR-iOSを使って文字の読み取り

1 はじめに2 導入準備2.1 ライブラリのインポート2.2 言語モデルのインポート2.3 カメラを利用する準備3 レイアウト作成4 カメラ撮影5 データ解析5.1 UIImageのエクステンション5 ...

swift

端末のモデル名やサイズを簡単に取得できるライブラリ「Device」

1 はじめに2 準備3 試してみる3.1 端末モデル名3.2 画面サイズ3.3 端末の種類4 さいごに はじめに こんにちは、nukkyです。 今回は端末のサイズやモデル名などを 簡単に取得できるライ ...

【Swift】SwiftUIの理解のためDSL記法とFunctionBuilderを調べてみた

1 はじめに2 DSL(ドメイン固有言語)について3 関数ビルダ3.1 定義方法3.2 使用方法3.3 SwiftUIの関数ビルダ4 カスタム属性5 さいごに6 おすすめ書籍 はじめに Xcode11 ...

swift

[Swift3] Segmentを使った画面切り替え (Extra View)

1 はじめに1.1 前提条件2 Segmentの用意3 表示したいViewを用意4 Extra Viewsに追加5 Segmentでの切り替え5.1 デフォルトで表示されるViewを設定5.2 Seg ...

フォロー

follow us in feedly

blog-page_side_responsive

2018年2月
 123
45678910
11121314151617
18192021222324
25262728 

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。