我試圖使用Realm在創建內容時存儲用戶數據。我知道Realm正在保存正確的數據,我可以訪問我需要的某些數據,即我試圖在自定義單元格中的標籤上顯示的名稱。cellForRowAtIndexPath未顯示Realm對象數據
我給視圖控制器代碼
class MeetupListViewController: ToolbarTabSuper, UIViewControllerTransitioningDelegate, UITableViewDelegate, UITableViewDataSource {
@IBOutlet var tableView: UITableView!
@IBOutlet weak var toolbarView: UIToolbar!
var realm: Realm!
lazy var results: Results<Meetup> = { self.realm.objects(Meetup).sorted("meetupName") }()
var meetups = [Meetup]()
var items: [String] = ["We", "Heart", "Swift"]
override func viewDidLoad() {
super.viewDidLoad()
navigationItem.title = "Meetup List"
self.toolbarView.barTintColor = tabToolbarColor
}
override func viewWillAppear(animated: Bool) {
super.viewDidAppear(animated)
tableView.reloadData()
}
func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat
{
return 60
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return self.results.count
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = self.tableView.dequeueReusableCellWithIdentifier("cell") as! MeetupCellTableViewCell
let item = results[indexPath.row]
cell.label?.text = item.meetupName
return cell
}
我的自定義細胞
class MeetupCellTableViewCell: UITableViewCell {
var meetupName = UILabel()
@IBOutlet var label: UILabel!
override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
self.contentView.addSubview(meetupName)
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
}代碼
識別在故事板被設置在哪裏與創建的標籤的重用我想使用的圖像。看來cellForRowAtIndexPath函數甚至沒有被調用。一切似乎都從我在網上看到的東西上工作,但它根本沒有顯示出來。
是什麼'self.results',你在哪裏填充它?異步的地方? – luk2302
查看代碼時,所有內容都是正確的。在cellForRowAtIndexPath中設置一個斷點,以查看它是否正在調用函數,或者,然後告訴我。 – Anokrize
@ luk2302它從調用到領域實例中填充。它正確填充,我已經打印RMArray來檢查 – ggworean