我有一个顶级UIViewController,里面有一个UITableView.顶层UIViewController实例化一个NavigationController,并将另一个UIViewController推到NavigationController上.也就是说,我们进入了一个新的第二视角.第二个视图在左上角有一个常用的"后退"按钮,允许您导航回顶层视图.

当从第二个视图导航回顶层视图时,是否可以通过在顶层调用cellForRowAtIndexPath,使用在第二个视图中生成的数据在顶层视图中重新绘制UITableView?如果可以,如何实现?

推荐答案

您只需这样做(在具有UITableView的UIViewController中).你不必担心此时细胞水平上发生了什么.

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    [self.tableView reloadData]; // to reload selected cell
}

只需将上面的代码添加到控制器中,当您从第二个视图返回时,就会看到正确的事情发生.对reloadData的调用告诉表视图,它需要从您的模型中刷新单元格,其他一切都会很好地进行.

Objective-c相关问答推荐

如何删除Objective-C中未定义的符号&错误?

iOS:警告try 呈现其视图不在窗口层次 struct 中的 ViewController

如何在情节提要中为视图控制器提供标识符?

如何使用 NSFileManager 删除目录及其内容

iphone - 防止uiscrollview通过滚动

定义缓存变量时在objective-c中使用static关键字

如何正确获取文件大小并将其转换为 Cocoa 中的 MB、GB?

Facebook 的 UIActivityViewController 不显示默认文本

在Objective-C中从类名的NSString创建对象

Objective-C:如何从子类访问父属性?

当用户返回视图控制器时如何取消 Select uitableview 单元格

访问当前视图的父视图 - iOS

从昨天开始无法将存档上传到应用store

从 UIImage 获取 Exif 数据 - UIImagePickerController

Objective-C 中的非正式协议?

当 UIView 框架更改时,视图内的 AVPlayer 层不会调整大小

如何调整 UITableView 中原型单元格的左边距?

iPhone如何在打字时获取UITextField的文本?

Xcode没有编译任何项目? 'clang 失败,退出代码 255'

iOS中的活动生命周期相当于什么?