前提・実現したいこと
ここに質問の内容を詳しく書いてください。
(例)PHP(CakePHP)で●●なシステムを作っています。
■■な機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
appの作成をしながらswiftの勉強をしています。PageViewControllerを使って複数ページをスクロールして移動できるようにしようとしているところなのですが、その際に下記のエラーが出てしまいました。解決法をお願いします。
エラーメッセージ Use of undeclared type 'FirstViewController'
該当のソースコード
ソースコード import UIKit class PageViewController: UIPageViewController { override func viewDidLoad() { super.viewDidLoad() self.setViewControllers([getFirst()], direction: .Forward, animated: true, completion: nil) } func getFirst() -> FirstViewController { return storyboard!.instantiateViewControllerWithIdentifier("FirstViewController") as! FirstViewController } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } } // Do any additional setup after loading the view, typically from a nib. ### 試したこと 全てを理解しているわけではなかったため、とりあえず参考にしたサイト通りに書きました。下記が該当サイトです。このページの「UIPageViewControllerを編集しよう」の箇所です。 https://qiita.com/Takeshi_Akutsu/items/dbf54df8e8a50e8ed5be ### 補足情報(FW/ツールのバージョンなど) ここにより詳細な情報を記載してください。
Qiitaの参照されたページに
> 2.それに対応したファイルも3つ作って、それぞれのViewControllerに指定してください。
とありますが、これは実行されていますでしょうか。
すみません、確かにファイルを作ってなかったです、ありがとうございます。今、その通りに実行してみたらUse of undeclared type 'FirstViewController'のエラーは消えたのですが、新たに
Cannot convert value of type 'FirstViewController' to expected element type 'UIViewController'
というエラーが発生してしまいました。これについても助けていただけるとありがたいです。
たとえば、
https://capibara1969.com/1118/
のように、Cocoa Touch class としてファイルを作り、UIVewcontroller のサブクラスとして作れば通常は問題ないと思いますが、こんな感じで追加されていますでしょうか。
別にCocoa Touch class として作っていなくても、FirstViewController の宣言部が
class FirstViewController: UIViewController {
となっていればエラーも出ないはずです。