我已经设置了一个简单的演示应用程序,UITableViewController
没有内容,但工具栏中有一个“添加”按钮。这将启动一个模态视图控制器,除了“取消”按钮之外,它又是空的。取消按钮只是告诉它的delegate
(the UITableViewController
) 关闭模式。
然后我在's方法中添加了一条NSLog
语句。UITableViewController
numberOfSectionsInTableView
通常,当表视图控制器加载时,我会看到两次调用numberOfSectionsInTableView
. 当我打开并关闭模式(返回到UITableViewController
)时,我看不到对numberOfSectionsInTableView
.
但是,如果我0
从中返回numberOfSectionsInTableView
,除了显示的两个调用之外,我还会在模态关闭时看到一个额外的 numberOfSections 调用。
这仅在numberOfSectionsInTableView
返回时发生0
,除了提到的之外,我没有向我的项目添加任何其他代码。正如我所描述的那样,通过设置几个控制器并修改来自numberOfSectionsInTableView
.
我的问题:
- 为什么从模态视图返回
UITableView
调用?numberOfSectionsInTableView
numberOfSectionsInTableView
为什么只有在返回时才这样做0
?- 除了
numberOfSectionsInTableView
,当模式被解除时,UITableViewController
也会调用。cellForRowAtIndex:
事实上,它正在尝试显示其dataSource
. 如果添加的第一行已经自动更新,我该如何手动为行插入设置动画?难道不应该让我来确保 myUITableView
与其一致dataSource
吗? - 检查什么属性
UITableViewController
才能知道有一个或多个部分(因此询问我的代表有多少部分)?它不能是numberOfSectionsInTableView
它自己,因为每当我从模态返回时,我都会看到它被调用,而不仅仅是在 numberOfSections = 0 时。