ok setting basic messaging app using parse, have message controller here finished cell data isn't displaying. im not getting errors not go on. can fresh pair of eyes spot error code follows :-
class messagestableviewcontroller: uitableviewcontroller { var messages = [] override func viewwillappear(animated: bool) { messages = [] self.navigationcontroller?.title = "my messages" var currentuser = pfuser.currentuser()?.username var query = pfquery(classname: "touser") query.wherekey("touser", equalto: currentuser!) query.orderbydescending("createdat") query.findobjectsinbackgroundwithblock({ (results: [anyobject]?, error: nserror?) -> void in if error == nil { self.messages = results! self.tableview.reloaddata() } }) } override func numberofsectionsintableview(tableview: uitableview) -> int { return messages.count > 0 ? 1 : 0 } override func tableview(tableview: uitableview, numberofrowsinsection section: int) -> int { return messages.count } override func tableview(tableview: uitableview, cellforrowatindexpath indexpath: nsindexpath) -> uitableviewcell { let cell = tableview.dequeuereusablecellwithidentifier("cell", forindexpath: indexpath) as! uitableviewcell let messagedate = messages[indexpath.row].valueforkey("createdat") as! nsdate let dateformatter = nsdateformatter() dateformatter.dateformat = "dd-mmm-yyy hh:mm:ss" let strdate = dateformatter.stringfromdate(messagedate) let message: string = messages[indexpath.row].valueforkey("message") as! string let fromuser: string = messages[indexpath.row].valueforkey("fromuser") as! string cell.textlabel?.text = message cell.detailtextlabel?.text = "from \(fromuser) : \(strdate) " return cell } }
any ideas? thanks
i have tried , it's no matter on reload datasource.it may problem of data ,i think.
override func viewwillappear(animated: bool) { super.viewwillappear(animated) swift_dispatch_after(2, { () -> () in self.array = nsarray(objects:"a","bb","vcc") self.tableview.reloaddata() }); } // mark: - table view data source override func numberofsectionsintableview(tableview: uitableview) -> int { return 1 } override func tableview(tableview: uitableview, numberofrowsinsection section: int) -> int { return array.count } override func tableview(tableview: uitableview, cellforrowatindexpath indexpath: nsindexpath) -> uitableviewcell { let cell = tableview.dequeuereusablecellwithidentifier("reuseidentifier", forindexpath: indexpath) as! uitableviewcell if array.count != 0 { let messagedate = nsdate() let dateformatter = nsdateformatter() dateformatter.dateformat = "dd-mmm-yyy hh:mm:ss" let strdate = dateformatter.stringfromdate(messagedate) cell.textlabel?.text = (array[indexpath.row] as! string) + strdate } return cell }
Comments
Post a Comment