私は私のプロジェクトの一つに似たレイアウトを持っていました。私はSJSegmentedViewControllerを使用しました。
これは、headerViewController、中間セグメントのデータソース、およびこれらのセグメントのviewController配列が必要です。
このライブラリを使用すると、画面上の任意の場所からスクロールすることができます。さらに、分割されたコントロールが上にスクロールし、ユーザーが一番上にスクロールします。ここで
は、あなたがこれを実装する方法です。
import SJSegmentedScrollView
が続いheaderViewControllerおよびセグメント用の2つのviewControllers(セイビデオとヒント)を作成し、あなたのクラスにモジュール
まず輸入
let headerViewController = HeaderViewController()
let video = VideoController()
let tips = TipsController()
これらのコントローラを設定し、次のようにセグメント化されたコントロールのタイトルを設定します。
segmentController.headerViewController = header
segmentController.segmentControllers = [video,tips]
video.title = "Video"
tips.title = "Tips"
その後
addChildViewController(segmentController)
containerView.addSubview(segmentController.view)
segmentController.view.frame = self.containerView.bounds
segmentController.didMove(toParentViewController: self)
ここ
コンテナビューは、UIContainerView
最終あるコンテナビューに追加しますが、この関数を呼び出した後、子コントローラ(のVideoController、TipsController)にコールすることを確認してくださいこれらのコントローラでは、画面のどこからでもスクロールすることができます。
extension HomeListingViewController: SJSegmentedViewControllerViewSource {
func viewForSegmentControllerToObserveContentOffsetChange() -> UIView {
//Scrollview in child controllers
return scrollview
}
}
あなたはhere
は、この情報がお役に立てば幸い完全なドキュメントを見つけることができます!