Iphone NSArray和Sections

时间:2011-03-17 08:33:30

标签: iphone nsarray

我目前正在开发一款应用程序,使用NSArrays中保存的数据在足球比赛中展示装置。我想现在将数据放入部分,例如第1轮显示3场比赛,第2轮显示6场比赛等。

有人可以帮助我如何在UITable中显示数据吗?

此致 约翰

3 个答案:

答案 0 :(得分:3)

我通常在NSArray中使用NSArrays。

这是我创建数据源数组的方法:

NSArray *section0 = [NSArray arrayWithObjects:@"Section 0 Row 0", @"Section 0 Row 1", nil];
NSArray *section1 = [NSArray arrayWithObjects:@"Section 1 Row 0", @"Section 1 Row 1", @"Section 1 Row 2", nil];
self.tableViewData = [NSArray arrayWithObjects:section0, section1, nil];

和一些UITableView方法让你明白了:

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return [self.tableViewData count];
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return [[self.tableViewData objectAtIndex:section] count];
}


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    MyObject *object = [[self.tableViewData objectAtIndex:indexPath.section] objectAtIndex:indexPath.row];
    // Do something
} 

对于部分的标题(和索引),我创建了单独的NSArrays。

答案 1 :(得分:1)

最好创建Array of Array。假设你有3个部分,每个部分有4行。所以用三个数组对象创建一个数组。每个内部数组将包含行值

答案 2 :(得分:0)

您需要创建一个符合UITableViewDataSource protocol的类。该类通常是 UIViewController 的子类。然后,您应该将 UITableView dataSource属性设置为指向此类的实例。您的数据源类应该实现协议的方法,以便它返回基于模型中数据的值(因此这是一个控制器类)。如果有帮助,您还可以使用 UIViewController 子类 UITableViewController