这段代码在我的TableViewController中,当我模拟它时,单元格会加载正确的内容,但无法滚动或点击视图。我在didSelectRowAtIndexPath中放了一个prinln(),它甚至没有记录。什么时候会发生?
这是我在viewDidLoad中的代码
super.viewDidLoad()
var query = PFUser.query()
query.findObjectsInBackgroundWithBlock({
(objects: [AnyObject]! , error: NSError!) in
self.users.removeAll(keepCapacity: true)
for object in objects {
var user: PFUser = object as PFUser
var isfollowing:Bool = false
if user.username != PFUser.currentUser().username{
self.users.append(user.username)
var query = PFQuery(className: "followers")
query.whereKey("follower", equalTo: PFUser.currentUser().username)
query.whereKey("following", equalTo: user.username)
query.findObjectsInBackgroundWithBlock({ ( objects:[AnyObject]!, error: NSError!) -> Void in
if error == nil {
for object in objects {
isfollowing = true
}
self.following.append(isfollowing)
}
self.tableView.reloadData()
}
填写表格单元格的代码非常基本,返回一个数组的计数,并将textlabel设置为array [indexPath.row]。
谢谢你
答案 0 :(得分:1)
为什么不坚持使用来自UITableView
的标准代表。
在情节提要中创建一个表,并创建一个带标识符的默认单元格。将ViewController
连接为表格的代表。
完成后,使用您拥有的数组填充数组单元格。
示例:
func numberOfSectionsInTableView(tableView: UITableView!) -> Int {
// Return the number of sections.
return 1
}
func tableView(tableView: UITableView!, numberOfRowsInSection section: Int) -> Int {
// Return the number of rows in the section.
return userArray.count
}
func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell! {
let cell = tableView.dequeueReusableCellWithIdentifier("objectCell", forIndexPath: indexPath) as UITableViewCell
var user:User = userArray.objectAtIndex(indexPath.row) as User
var imageView:UIImageView = cell.viewWithTag(1) as UIImageView
var ageLbl:UILabel = cell.viewWithTag(2) as UILabel
var nameLbl:UILabel = cell.viewWithTag(3) as UILabel
nameLbl.text = user.name
ageLbl.text = user.age
imageView.image = user.Image
return cell
}