1

我试图在 xcode5 的情节提要中实现一个表格。在故事板中做时,我无法得到结果。我尝试在情节提要中使用以下代码。有人能发现这段代码有什么问题吗?输出显示所有单元格相同。我如何将每个单元格与数组中的不同对象分开?

temp=[[HomeDetails alloc]init];
array=[[NSMutableArray alloc]init];
homecell=[[HomeCell alloc]init];

selection.Title=@"Popular";
selection.description=@"ghjggb";
selection.Image=@"PopularLogo.png";

[array addObject:selection];

selection.Title=@"Browse";
selection.description=@"gdfgdgb";
selection.Image=@"BrowseLogo.png";

[array addObject:selection];

selection.Title=@"My Signture";
selection.description=@"gdfgdfgb";
selection.Image=@"MySignatureLogo.png";

[array addObject:selection];

我已经在 tableview 原型本身内制作了 tableviewcell。

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell1";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
if (cell==nil)
{
    cell=[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
        temp=[array objectAtIndex:indexPath.row];
        UILabel *Label = (UILabel *)[cell viewWithTag:2];
        Label.text = temp.Title;
        NSLog(@"%d",indexPath.row);
        UIImageView *Image = (UIImageView *)[cell viewWithTag:1];
        Image.image = [UIImage imageNamed:temp.Image];
        UITextField *textfield = (UITextField *)[cell viewWithTag:3];
        textfield.text =temp.description;
}
4

1 回答 1

0

您一遍又一遍地将相同的对象“选择”添加到数组中。更重要的是,您正在编辑同一个对象的属性 - 这将影响数组中存在的所有 3 个元素 - 因为它是内存中的同一个对象。

每次在设置值之前创建新实例。

selection = [Selection new]; //this is missing - each time you want to create a new one.
selection.Title=@"My Signture";
selection.description=@"gdfgdfgb";
selection.Image=@"MySignatureLogo.png";
[array addObject:selection];
于 2013-10-30T11:17:56.533 回答