如何从UIViewController填充tableviews

时间:2012-04-19 11:48:55

标签: uitableview ios5 uiviewcontroller

我想在我的scrollview上添加4个UITableViews并用一些不同的数组弹出它们(假设我有一个数组)。我已将此scrollview添加到我的self.view(我在UIViewController类上执行此操作)。如何填写我的Tableviews可以让任何人帮忙吗?

更多细节:

这是一个截图; enter image description here

这是我的UIViewControllerClass

的界面
#import <UIKit/UIKit.h>

@interface MainMenu : UIViewController<UITableViewDelegate>

@property (retain, nonatomic) IBOutlet UIScrollView *scrollView;
@property (retain, nonatomic) IBOutlet UITableView *group1;
@property (retain, nonatomic) IBOutlet UITableView *group2;
@property (retain, nonatomic) IBOutlet UITableView *group3;
@property (retain, nonatomic) IBOutlet UITableView *group4;

@end//i drag/dropped from IB, so there is no problem with synthesizes..

我想用不同的数组填充这些tableview,如何处理这种情况..?非常感谢

附加说明;我试过这样的事情,但没有效果:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";

    UITableViewCell *cell = [group1 dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
    }

    NSArray *array=[NSArray arrayWithObjects:@"one",@"two",@"tree", nil];
    cell.textLabel.text = [array objectAtIndex:indexPath.row];
    return cell;

}

1 个答案:

答案 0 :(得分:1)

老兄,首先你要制作uiviewcontroller de委托和所有4个表的数据源,然后你将为每个表分配一个不同的标签..然后你将添加委托和数据源协议......和你将实现数据源和委托方法,如普通的uitableviewcontroller ......所有这些方法都会收到Uitableview参数,因此您将测试此表视图的标记,如:

...

if (tableView.tag == 10) {
//implement the table 1
NSArray *array=[NSArray arrayWithObjects:@"one",@"two",@"tree", nil];
cell.textLabel.text = [array objectAtIndex:indexPath.row];

} else if (tableView.tag == 20) {
//implement the table 2
} else if (tableView.tag == 30) {
//implement the table 3
} else if (tableView.tag == 40) {
//implement the table 4
}

return cell;

这样您将使用相同的方法来执行所有表视图。