Instagramと同様のアプリを作成しようとしていますが、私はコメントの部分に固執しています。画像の左側には、下部にUITextFieldとUIButtonがあるコンテナビューが埋め込まれたVCがあります。コンテナビューには、すべてのユーザープロファイルイメージ、ユーザー名、およびコメント自体を含むUITableViewが埋め込まれています。埋め込みセグを2回目に呼び出すことができません
最初の負荷では、サーバー側からその投稿のコメントをすべて完全に取得して完全に表示できます。しかし、私はprepareForSegue
を使ってセグを再度呼び出せず、UITableViewを更新できません。私は、エラーを受信しています:
There are unexpected subviews in the container view. Perhaps the embed segue has already fired once or a subview was added programmatically?
は私のコードです:
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if (segue.identifier == "getCommentSegue"){
if let destination = segue.destinationViewController as? CommentsTVC{
if(!self.commentID.isEmpty){
destination.UpdateCommentRow(self.profileImage, commentID: self.commentID, comment: self.postComment, dateTimePost: self.dateTime)
self.commentID = String()
}
destination.postID = self.postID
}
}
}
し、正常dispatch_async
で私のデータベースに行を追加した後:
self.performSegueWithIdentifier("getCommentSegue", sender: nil)
私はまた、既存のオブジェクトに新しいコメントを追加するとすべてのコメントを保存すると、そのカウントは0です。私はそれがオブジェクトの新しい参照を取っていると信じています。助けてください!
コンテナビューをこのように呼び出さないと、新しいビューでテーブルビューを更新できますか? 「getCommentSegue」は、私がIBで設定したこのリンクの識別子です。 – jo3birdtalk
@ ThePumpingLama上記のコードはVCの左側に書かれています。コメントを格納するオブジェクトは、UITableViewの右側にあります。したがって、私は新しいコメントでオブジェクトを追加する必要があります。したがって、私は、左側のVCを使用して、右側のオブジェクトを追加する必要がありますUITableViewController。これがセットアップの仕方です。 – jo3birdtalk
これですべての作業が完了したので、テーブルビューを更新できますか?厳しいと批判的に聞こえて申し訳ありませんが、私が今まで見たことのない最も嫌なことをしています。 – Gruntcakes