自定义tableview单元格中的按钮未显示

时间:2016-06-21 03:06:23

标签: ios uitableview

我有一个UITableView,每个单元格都与一个文件相关联。 tableview显示来自所有用户的文件,当单元格的文件属于当前用户时,单元格显示编辑按钮。我的cellForRowAtIndexPath将检查与该文件关联的用户ID,并将其与当前用户ID进行比较。如果ID匹配,则不会隐藏按钮。

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell 
{

    let cell = self.fileTable.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! FileCell
    let file = self.tableFiles[indexPath.row]
    cell.fileLabel.text = file.title
    cell.userLabel.text = file.username

    if file.userId != user?.userID
    {
        cell.editButton.hidden = true
    }

    cell.editButton.addTarget(self, action:#selector(HomeController.editPressed(_:)), forControlEvents: UIControlEvents.TouchUpInside)

    return cell
}

当用户登录并且登录后第一次加载tableview时,此方法正常。但是,当用户创建要添加到tableview的新文件时,将调用self.navigationController?.popViewControllerAnimated(true)并重新显示tableview。但是,新文件的编辑按钮不会显示在新文件或任何将来添加的文件中,除非用户注销并重新登录。

1 个答案:

答案 0 :(得分:0)

以下应解决您的问题。

if file.userId != user?.userID
{
    cell.editButton.hidden = true
}
else
{
    cell.editButton.hidden = false

}