Master/Detail - 如果对象被删除或没有对象留在 Master 中,则清除详细信息 (iOS)
Master/Detail - clear detail if object deleted or no objects left in Master (iOS)
在我的 iPad 应用程序(或横向 iPhone 6 Plus)中,我使用 master/detail UISplitViewController。当用户从 Master 中删除当前选中的项目或删除 Master 中的所有项目时,先前选择的项目的详细信息仍保留在 Detail 视图中。
如果他们删除当前选定的项目或数据源中的最后一个项目(这可能不是必需的),我需要做什么来确保详细信息视图被清除回其空的默认状态?
有没有办法通过UITableView/DataSource魔法自动发生这种情况?
(Swift 可以的话,但是 Objective-C 也可以。)
在主视图中存储项目 属性。
var currentPresentingItem : <yourItemClass>?
currentPresentingItem
只有在显示详细视图时才不是 nil。因此,在正常 iphone 中,当 currentPresentingItem
不是 nil
时,人们将永远没有机会删除 masterView 中的项目
func segueToDefaultDetailViewIfPresentingItemDeleted(deletingItem : <yourItemClass>){
if currentPresentingItem == deletingItem{
// segue to your default detail view,
// this will never happen in normal iphone
}
}
在我的 iPad 应用程序(或横向 iPhone 6 Plus)中,我使用 master/detail UISplitViewController。当用户从 Master 中删除当前选中的项目或删除 Master 中的所有项目时,先前选择的项目的详细信息仍保留在 Detail 视图中。
如果他们删除当前选定的项目或数据源中的最后一个项目(这可能不是必需的),我需要做什么来确保详细信息视图被清除回其空的默认状态?
有没有办法通过UITableView/DataSource魔法自动发生这种情况?
(Swift 可以的话,但是 Objective-C 也可以。)
在主视图中存储项目 属性。
var currentPresentingItem : <yourItemClass>?
currentPresentingItem
只有在显示详细视图时才不是 nil。因此,在正常 iphone 中,当 currentPresentingItem
不是 nil
func segueToDefaultDetailViewIfPresentingItemDeleted(deletingItem : <yourItemClass>){
if currentPresentingItem == deletingItem{
// segue to your default detail view,
// this will never happen in normal iphone
}
}