UITable第一节建成

时间:2012-10-01 22:40:48

标签: objective-c uitableview

抱歉愚蠢的问题,我是obj-c的初学者。

我想在我的表格中添加“加载更多”功能,我通过创建2部分来执行该功能。现在的问题是,从应用程序构建的第一部分是第二部分,而不是第一部分。

附加了第一次调用cellForRowAtIndexPath的日志:

2012-10-02 00:07:50.626 ----[6321:c07] item :0
2012-10-02 00:07:50.626 ----[6321:c07] section :1

不应该是这样的:

2012-10-02 00:07:50.626 ----[6321:c07] item :0
2012-10-02 00:07:50.626 ----[6321:c07] section :0

所以我的应用程序在首次启动时只显示“加载更多”单元格,而不是第一部分的第一行。在第一次“按下”“加载更多”按钮后,一切正常。

任何人都可以帮助我?

1 个答案:

答案 0 :(得分:0)

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath中,确保在初始化之前检查其indexPath变量section并返回UITableViewCell。如果它是“加载更多”单元格,indexPath.section == 1将为真。如果是indexPath.section == 0,则它是您的第一个表格单元格。

另请确保- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section返回正确的数字。

在重新阅读您的问题时,听起来您需要在按下“加载更多”之前使用单元格数据初始化您的表格。 “加载更多”究竟对表视图的后备数据做了什么?