実現したいことはこのようなページングメニューによるページ(コンテンツ)の切り替えができるアプリを作ることです
以下のサイトに載っている手順で開発を進めました
https://tech.recruit-mp.co.jp/mobile/post-18199/
PagingMenuViewControllerのコードは以下のような内容です。
Swift
1import UIKit 2import Tabman 3import Pageboy 4 5final class PagingMenuViewController: TabmanViewController { 6 // ページングメニューに対応したビューコントローラ 7 private lazy var viewControllers: [UIViewController] = { 8 [ 9 storyboard!.instantiateViewController(withIdentifier: "TableViewController"), 10 storyboard!.instantiateViewController(withIdentifier: "TextViewController"), 11 storyboard!.instantiateViewController(withIdentifier: "WebViewController") 12 ] 13 }() 14 15 override func viewDidLoad() { 16 super.viewDidLoad() 17 18 dataSource = self 19 20 // ページングメニューに表示する項目 21 bar.items = [ 22 Item(title: "Table View"), 23 Item(title: "Text View"), 24 Item(title: "Web View") 25 ] 26 } 27} 28 29extension PagingMenuViewController: PageboyViewControllerDataSource { 30 func numberOfViewControllers(in pageboyViewController: PageboyViewController) -> Int { 31 return viewControllers.count 32 } 33 34 func viewController(for pageboyViewController: PageboyViewController, at index: PageboyViewController.PageIndex) -> UIViewController? { 35 return viewControllers[index] 36 } 37 38 func defaultPage(for pageboyViewController: PageboyViewController) -> PageboyViewController.Page? { 39 return nil 40 } 41}
現在、以下のようなエラー警告文が出て、問題を解決できない状態です
◎画面構成の説明
画面構成としては、最初の画面(一番左)「MXScrollViewController」に
(水色の画面)「HeaderViewController.swift」と
(薄赤い画面)「PagingMenuViewController.swift」がセグエ接続されており、
ページングメニューのページのコンテンツとして(右側縦三つの画面)
「TableViewController.swift」、「TextViewController.swift」、「WebViewController.swift」
を作成した状態です。
◎理解不足の点
この「Item」がなんなのかわかりませんm(_ _)m
またXcode内でもまだ定義は行なっておりません。
ページングメニューの項目を表示する重要な部分なのですがどうやって表示させるのかが分かりません。。。
なのでいきなりviewDidLoad内で出てきた「bar.items」自体もわかりません。。(調べた上でです)
かなり初歩的な状態でアバウトな質問で失礼します。
その上でアドバイスやご指導・御教授をして頂きたいです。お待ちしております。
特にこのItemの構造の所で何かヒントを頂ければ前に進めそうです。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。