2016-04-24 1 views
0

スウィフト2、xcode7新しいViewControllerで宣言するときのServalの問題/エラー

プロジェクトに2番目のViewControllerを追加しました。最初のView Controllerは、ほぼ同じコード行を使用します。

取得これらのエラー:同じObjective-Cのセレクタ

とObjective-Cのセレクタと 'のtableView' スーパー 'のUITableViewController' から 'のtableView' のゲッターと 'のtableView' 競合ため

ゲッターletをオーバーライドするには、その囲みタイプと同じアクセス可能でなければなりません

'UITableView!'タイプの変更可能なプロパティ 'tableView'をオーバーライドできません。共変タイプでここにのUITableView "

は私のコードです:

import UIKit 
import CoreData 

class AllChatsViewController: UITableViewController { 

    var context: NSManagedObjectContext? 

    private var fetchedResultsController: NSFetchedResultsController? 

    private let tableView = UITableView(frame: CGRectZero, style: .Plain)//errors are here 


    private let cellIdentifier = "MessageCell" 

は、誰もがこれを支援することはできますか?

+0

今取り組んでいます行がなくてもエラーがスローされ、コンパイル時のその行はあなたが参照しているtableViewを知らないでしょう)。したがって、 'UITableViewController'のサブクラスにインスタンスプロパティ名tableViewを持つことは必要ではなく、不可能です。あなたのビューコントローラの全体のビューを占めていないテーブルビューが必要と感じる場合は、 'UIViewController'をサブクラス化してください。 – beyowulf

+0

ありがとう!だから、なぜ私の他のビューコントローラでこのコードラインが機能するのですか? – ryanbilak

+0

これはおそらく、それはtableViewという名前のプロパティを持たないUIViewControllerのサブクラスです。 UIViewControllerに既にviewと呼ばれるプロパティがあるため、そのビューコントローラにUIView型の可変ビューを追加した場合も同様のエラーが発生します。 – beyowulf

答えて

0

Beywulfは正しかった、私はTVCにVCを変更し、それは `UITableViewController`のビューは、そのインスタンス名がのtableViewである(つまり、あなたはすでに` self.tableView`を言うことができる `UITableView`ある

関連する問題