2017-02-24 6 views
-1

「NSInternalInconsistencyException」、理由:「識別子eventCell有するセルをデキューすることができない - 識別子のためのペン先やクラスを登録したり、ストーリーボードで試作電池を接続する必要があります」すぐにセルをデキューするにはどうすればよいですか?

相続コード

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {// this sets the title and subtitle to the Title and Location in the given EventPlan 
    let cell = tableView.dequeueReusableCell(withIdentifier: "eventCell ", for: indexPath) as UITableViewCell 

    cell.textLabel?.text = eventsArray[indexPath.row].title 
    cell.detailTextLabel?.text = eventsArray[indexPath.row].location 

    return cell   
} 


// here's my code for eventplan 
class EventPlan : NSObject { 
    var title:String 
    var location:String 

    init(tits: String, locs: String){ 
     self.title = tits 
     self.location = locs 
    }  
} 

let event = EventPlan(tits: "Wise BDAY", locs: "UVA-Wise") 

私の主なストーリーボードでeventCellとしてセル識別子にラベルを付けると思われていますが、まだエラーが表示されます。私はそれを正しく接続していませんか?

答えて

1

通常は、ストーリーボードにプロトタイプセルを設定し、ストーリーボードに再使用識別子を設定します。あなたがそうするなら、コードは必要ありません。

セルをニブファイルで定義する場合は、上のSandeepとNaveedの回答を参照してください。

+0

をきれいにして再実行してください!それは助けた –

+0

@ダンカンC:1つの単語ビンゴ:)従って投票:D –

+0

@ KunjPatelそれが答えを受け入れるべきであるあなたの問題を解決すれば。 –

0

テーブルビューでセルを登録する必要があります。私は通常viewDidLoadでそれを行います。

// Swift 2 
tableView.registerNib(UINib(nibName: "NIB_NAME", bundle: nil), forCellReuseIdentifier: "eventCell") 

// Swift 3 
tableView.register(UINib(nibName: "NIB_NAME", bundle: nil), forCellReuseIdentifier: "eventCell") 
+0

私はちょうど同じことをしましたが、同じメッセージがまだ届いています –

+0

@ kunj-patel:あなたのxib名はeventCellですか? UINibでXIB ???(nibName: "eventCell" は、バンドル:ゼロ)あなたはXIB名ではない、再利用可能な識別子の文字列のviewDidLoad(FUNC –

+0

オーバーライド){ペン先= UINibせて指定する必要があります(nibName: "eventCell" を、バンドル:ゼロ) 自己を.tableView.register(ペン先、forCellReuseIdentifier:「eventCell」) } –

関連する問題