2
|
Simon · 技术社区 · 14 年前 |
![]() |
1
2
问题不在
您的问题是在表视图处于非屏幕和非活动状态时更改数据。表视图设计为自动显示给定给它们的数据模型。当您从细节视图返回到TableView时,它会自动重新加载其数据,该数据现在包含在细节视图中所做的更改。不管您如何向表提供数据,它都会这样做。 在您希望表显示更改之前,阻止它显示更改的唯一方法是在您希望更改出现之前,不要将数据添加到数据模型中。在非ManagedObject中,您必须将细节视图中的数据传递回表,并在希望它出现时在TableView控制器中创建ManagedObject。 但是,从UI设计的角度来看,我建议您重新考虑您的设计。如果在重新加载后才更改表,您将如何向用户发出要进行更改的信号?用户界面是否会突然无明显原因地更新?用户必须启动它吗?如果他们忘记了呢? 我认为用户希望细节视图中所做的任何更改都能立即反映在TableView中,因为这实际上是所有TableView细节视图对的工作方式。例如,如果您在通讯簿的联系人详细信息中更改了联系人的姓名,则当您返回联系人列表时,该详细信息会立即反映出来。 |
![]() |
2
0
我使用的一个技巧是,当你展示你的细节视图控制器时调用beginupdates,当它消失时调用endupdates。例如。
|
![]() |
insipidintegrator · 通过迭代器/指针访问命名空间? 6 月前 |
|
Ben · 如何使用带有部分应用的过滤器功能的角度材质日期选择器? 12 月前 |
![]() |
larn · 这是工厂模式还是战略模式? 1 年前 |
![]() |
Community wiki · 您对存储库模式的理解是什么? 1 年前 |