gpt4 book ai didi

iphone - 在 UINavigationController 层次结构中刷新 UITableView 的最佳方法是什么

转载 作者:行者123 更新时间:2023-12-03 19:02:37 24 4
gpt4 key购买 nike

我对 iPhone 开发还很陌生,一直在努力寻找我认为解决这个问题的巧妙方法。

我有一个用户界面,其中记录数据的摘要显示在导航 Controller 内的表格中。当用户单击一行的附件按钮时,一个新 View 将被推送到导航 Controller 上,显示用户可以在其中编辑相应记录中的数据的 View 。完成后,编辑 View 将从导航 Controller 的堆栈中弹出,用户将返回到表格 View 。

我的问题是,当用户返回 TableView 时,表仍然显示编辑记录之前的数据状态。因此,我必须重新加载表数据以显示更改。

在显示表数据之前似乎不可能重新加载表数据,因为调用仅更新显示的记录。在显示表格后重新加载它会导致旧数据在用户眼前发生变化,我对此不太满意。

在我看来,这在 iPhone 应用程序中是一件很正常的事情。

有人可以建议执行此操作的最佳实践方法吗?我感觉我失去了一些东西。

干杯 - 史蒂夫。

最佳答案

标准方法一开始听起来可能很麻烦,但在很多情况下都是一种有用的模式。

在你的tableview类中创建一个类似的方法:

-(void)editDone {
[self.tableView reloadData];
}

向编辑 Controller 添加一个属性,例如:

@property (assign) id delegate;

当您的附件被点击时设置委托(delegate):

editController.delegate = self;

编辑完成后,调用您的方法,如下所示:

[delegate performSelector:@selector(editDone) withObject:nil];

您可以创建类似的方法来处理编辑组件的取消,或者执行模式编辑 Controller 的关闭等。如果您愿意,将所有这些都放在协议(protocol)中被认为更优雅。

关于iphone - 在 UINavigationController 层次结构中刷新 UITableView 的最佳方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2661666/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com