我在tableview中有两个部分位于tableviewcontroller中 由于某种原因,方法numberOfRowsInSection中的section值始终为" 1"。这很奇怪,因为一切似乎都很好。
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
// Return the number of sections.
return 2;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
// Return the number of rows in the section.
int i=section;
if(section==0)
return 1;
else{
return [self.flightDetailsArray count];
}
}
在故事板中,我有一个包含两个部分的表
好的,再一次为你理解这个问题。观看此代码
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
// Return the number of rows in the section.
NSLog(@"Section: %d",(int)section);
if(section==0)
return 1;
else{
return [self.flightDetailsArray count];
}
}
在日志中我看到" 1"总是
那是什么?奇怪的
答案 0 :(得分:0)
我不明白这背后的原因是因为我也是初学者,但据我所知,我认为你是第一次尝试返回1行而在下一步你要返回flightDetailsArray的计数,所以也许你可以通过以下步骤实现: -
insert into hello (username) values ('me')
答案 1 :(得分:0)
我认为您只想在第1部分中返回1行,然后在第2部分中返回flightDetailsArray
中的对象数。如果是这种情况,那就这样做吧,
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 2;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
if(section==0)
return 1;
else{
return [self.flightDetailsArray count];
}
}
现在,如果flightDetailsArray
中只有一个对象,则第二部分也可能会占一行。
请尝试打印NSLog(@"%@", [self.flightDetailsArray count])
并查看对象编号。
答案 2 :(得分:0)
对不起,伙计们。问题是我使用了satic类型的tableview,但内部还有动态单元格。所以我没注意它。然后我将id更改为动态,并添加了动态部分,它工作得很好。抱歉花时间。