在UITableView中动态创建行以显示自定义数据

时间:2013-10-25 07:36:08

标签: ios iphone objective-c uitableview

我有两个简单的课程:

Class1 {
    int i;
    NSString s;
}

Class2 {
    NSString name;
    NSString age;
}

在我的UIViewController中,我有2个NSMutableArray,每个数组包含Class1&的多个对象。等级2。

我需要为每个Array创建一个新的部分,部分中的行数应该等于该数组上的对象数。 同样在每个单元格中,我需要显示每个对象变量的数据。

请帮助!!!

2 个答案:

答案 0 :(得分:0)

尝试

if(tableview.section==0)
{
   cell.label.text= [aray1 object at index :indexpath.row]
} 

else if(tableview.section==1)
{
   cell.label.text= [aray object at index :indexpath.row]
} 

答案 1 :(得分:0)

尝试以下代码......

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{

    return 2;
}


- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    switch (section) {
        case 0:
            return self.class1Array.count;


        case 1:
            return self.class2Array.count;
    }
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"cell";
     UITableViewCell *cell=[tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];

    if(cell==nil)
    {
       cell= [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];


    }
switch(indexPath.section)
{
    case 0:
    cell.textLabel.text=[self.class1Array objectAtIndex:indexPath.row] s];
    cell.detailTextLabel.text=[self.class1Array objectAtIndex:indexPath.row] i];
    return cell;
    case 1:
    cell.textLabel.text=[self.class2Array objectAtIndex:indexPath.row] name];
    cell.detailTextLabel.text=[self.class1Array objectAtIndex:indexPath.row] age];
    return cell;
}

}

修改

如果您想创建自定义单元格,请尝试执行this