[解決済み] UIPageViewController: 現在表示されているビューを返す
2023-02-22 07:53:56
質問
の中に表示されている現在のページ/ビューが何であるかを知るにはどうしたらよいのでしょうか?
UIPageViewController
?
をオーバーライドしました。
viewDidAppear
メソッドをオーバーライドし、親ビューに ID を送信するようにしました。
viewDidAppear
メソッドで親ビューに id を送るようにします。
しかし、問題はこれです。表示されているページのIDとして、そのIDを確実に使用することができません。なぜなら、もしユーザーがページをめくり、途中でめくるのをやめてページを戻すことにした場合。
viewDidAppear
はすでに呼び出されているからです。(ビューはカールしたページの後ろに見えています)。
たぶん、現在のビューが消えた場合のみ、新しいidに切り替えるべきでしょう。しかし、現在表示されているビューを返す、もっと簡単な方法はないのでしょうか?
どのように解決するのですか?
手動で現在のページを記録しておく必要があります。
デリゲートメソッドである
pageViewController:didFinishAnimating:previousViewControllers:transitionCompleted:
はその変数をいつ更新するかを教えてくれます。メソッドの最後の引数
transitionCompleted:
は、ユーザーがページターン遷移を完了したかどうかを知ることができます。
そして、現在表示されているView Controllerを取得するには、次のようにします。
self.viewControllers?.first
関連
-
[解決済み] アトミック属性と非アトミック属性の違いは何ですか?
-
[解決済み] UIViewController のビューが表示されているかどうかを確認する方法
-
[解決済み] APNSの.pemファイルを作成する?
-
[解決済み] iPhoneのシミュレータに.ipaファイルをインストールする方法は?
-
[解決済み] Xcode 4.2 - '...' の宣言は、この関数の外では表示されません 警告
-
[解決済み] 再署名 IPA (iPhone)
-
[解決済み] viewWillAppear:と-viewDidAppear:の違いは何ですか?
-
[解決済み] iPhoneシミュレーターでカメラをテストするには?
-
[解決済み] アプリを提出する前にitunesのリンクを取得する
-
[解決済み] iPhoneシミュレーターの位置情報
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] iPhoneでウェブページからアプリがインストールされているかどうかを確認する方法
-
[解決済み] iPhone Safari ウェブアプリでリンクを新しいウィンドウで開く
-
[解決済み] iPhone/iPadのディスクの空き容量を確認する方法を教えてください。
-
[解決済み] iPhoneのTableViewのCellの右側に小さな矢印を追加する
-
[解決済み] 再署名 IPA (iPhone)
-
[解決済み] iOSアプリでターゲットのバージョン/ビルド番号をプログラム的に表示するには?
-
[解決済み] ナビゲーションコントローラスタック、サブビュー、モーダルコントローラを使用せずに、ビューコントローラの変化をアニメーション化する?
-
[解決済み] UIScrollViewをコンテンツに合わせて自動サイズ調整する方法
-
[解決済み] UILabelがラベルサイズに合うようにテキストを自動縮小しない
-
[解決済み] iPhoneでNSStringをAES暗号化する方法