从UITableView导航到另一个ViewController,然后返回到TableViewController导致一些元素消失
问题描述:
我的笔记应用程序中有一个奇怪的问题。 我有一个ViewController
这是一个UITableView
委托和数据源(我不使用UITableViewController
) 表视图是一个笔记列表。点击一个将打开所选笔记的编辑器视图控制器。从UITableView导航到另一个ViewController,然后返回到TableViewController导致一些元素消失
当我点击一个单元格,然后单击“返回”按钮返回到表格视图,表格视图UI的某些元素会丢失。
这里有一个前后表视图的截图后:
我使用的境界移动数据库来存储笔记中的数据。
当我调试我看到数据实际上填充在单元格中时,它只是不出现在屏幕上。
我试着删除应用程序,并重新安装
我试图删除故事板,从头
重建的一切,我检查cellForRowAt indexPath
并确保被填充数据。
更新 - cellForRowAt indexPath:
代码:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: NoteListCell.identifier, for: indexPath) as! NoteListCell
let object = results[indexPath.row]
cell.configureCellWith(note: object)
return cell
}
我甚至尝试添加背景色到消失,看看他们是否仍然存在标签或者是它只是缺少(这不是文字文字,整个标签都没有了)。
我没有什么特别的代码来处理tableview数据或在视图控制器之间导航。我没有在我的viewWillAppear
和viewWillDisappear
两种方法都导致这种VC(我厌倦了从这些方法中删除一切,但问题依然存在)
任何人有任何想法,我还可以检查什么?
答
所以我仍然不知道为什么会发生这种情况,但我安装了Xcode 9 beta并从那里运行了项目(我之前使用8.3.3),问题消失了。 重装8.3.3也可能解决问题。
显示您的'cellForRowAt indexPath'代码 – Venkat
检查您的didselectrow方法。可能是你正在改变选择的颜色,或者你提供了选择样式,它正在改变选择单元格的颜色。 –
@Venkat我用代码更新了我的问题,但我怀疑它与tableview方法有关,因为问题发生在导航回tableview视图控制器之后,并且这些方法甚至没有被调用。 – Gil