我有一个包含 20 个对象的数组。该数组中可以有更多对象。为简单起见,让我们说它在该数组中唯一的 nsstring 对象。
我想在每一行中显示其中的 3 个元素。所以行数是
- (NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
int i = 0;
if ( ([myArray count] % 3) > 0 )
{
i++;
}
return [myArray count] / 3 + i;
}
我有一个帮手可验证int lastObj=0
- (UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
---instaniate the cell
for (int i = 1; i <= 3; i++)
{
if (lastObj <= [myArray count])
{
--create cell content
-- cellContent.myLabel.text=[myArray onbjectAtIndex:lastObj]
--add cellContent to cell
lastObj++;
}
}
return cell;
}
所以如果我在那个数组中有 5 个对象,那么它们就会正确显示。但如果列表有 14 个元素,则显示前 9 个元素,它从元素 0 开始,其余的不显示。在应用程序上,您可以看到 3 行,每行有 3 个数组元素。所以我试图模仿 3 列。
知道如何解决这个问题吗?