iPhone:UITableView部分
我有一个带有分区的表视图iPhone:UITableView部分,iphone,uitableview,Iphone,Uitableview,我有一个带有分区的表视图 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return numberHigherThen0; } 在cellForRowAtIndexPath方法中,我根据节设置行 - (UITableViewCell *)tableView:(UITableView *)aTableView cellForRowAtIndexPath:(NSIndexPat
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return numberHigherThen0;
}
在cellForRowAtIndexPath方法中,我根据节设置行
- (UITableViewCell *)tableView:(UITableView *)aTableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (0 == indexPath.section) {
//setup rows
} esle {
//setup rows
}
}
节中的节数和行数会动态更改。但节数始终大于0。所以在cellForRowAtIndexPath.section==0中,总是会出现这种情况,对吗?但有时CellForRowatineXpath未通过大小写indexath.section==0!!!为什么?什么时候可能是真的?cellForRowAtIndexPath何时可以从1开始计数节
更新:
第2节在NumberOfSectionsTableView中没有行:指定节数-但是,节数从0开始
因此,如果在NumberOfSectionsTableView中返回3,您将有三个部分—第0部分、第1部分和第2部分。在NumberOfSectionsTableView中:您指定了部分的数量—但是,这些部分是从0开始编号的
因此,如果在NumberOfSectionsTableView中返回3,您将有三个部分—第0部分、第1部分和第2部分。
tableView:cellForRowAtIndexPath:
仅在表格视图需要刷新给定索引路径处的单元格时调用
因此,如果应用程序启动时可以看到section 0,那么您应该至少收到一次section==0的呼叫。在后续刷新中,如果UITableView认为不需要刷新节0,则可能会跳过该节。这可能就是你看到的
使用
reloadrowsatinexpaths:withRowAnimation:
,或reloadSections:withRowAnimation:
,等通知UITableView行已更改,需要刷新它。tableView:cellForRowAtIndexPath:
仅在表格视图需要刷新给定索引路径上的单元格时调用
因此,如果应用程序启动时可以看到section 0,那么您应该至少收到一次section==0的呼叫。在后续刷新中,如果UITableView认为不需要刷新节0,则可能会跳过该节。这可能就是你看到的
使用
reloadRowsAtIndexPaths:withRowAnimation:
,或reloadSections:withRowAnimation:
,等告诉UITableView行已更改,需要刷新它。那么为什么indexPath.section==0有时从不为真?该节可能不可见,或者该节可能根本没有行?该节是可见的,它有一行,那么为什么indexath.section==0有时永远不会为真?该节可能不可见,或者该节可能根本没有行?该节是可见的,它有一行“因此,如果应用程序启动时可以看到section 0,是的,您应该至少收到一次section==0的呼叫。“但我没有,问题是,您是否为此分区向tableView:numberOfRowsInSection:
返回一个>0的号码?如果分区没有行,则UITableView将不会尝试获取它的行…”因此,如果应用程序启动时分区0可见,是的,您应该至少收到一次分区==0的呼叫。“但我没有,问题是您是否为此分区向tableView:numberOfRowsInSection:
返回了一个>0的数字?如果该分区没有行,则UITableView将不会尝试获取该分区的行。。。