0

在我的应用程序的一个部分中,我有一个UITableView现在工作正常。我想将行设置0 cell.textLabel.text@"Some string". 设置行0后,我想从数组中加载其余行。目前在加载我的数组填充表格视图,但我正在尝试将 row 设置0sticky。我能想到的最接近的例子是一个论坛主题,它被设置为保持在顶部。我的数组由 Web 服务调用返回的数据构成。

自从我弄乱表格视图以来已经有一段时间了,我对此一无所知。表格视图是 1 部分,我通过计算数组中的元素来获取行。因为我想创建一个额外的单元格(行0),所以我会调用[array count] + 1. 我不知道这种方法是否是最好的方法,这就是我在这里接触社区的原因。

在这一点上,任何洞察力或朝着正确方向推进都会很棒。

4

2 回答 2

4

你在正确的轨道上:

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return [array count]+1;
}

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath    *)indexPath {
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell"];
    if ([indexPath row] == 0) {
        // Code for first
        [[cell  textLabel] setText:@"First cell"];
    } else {
        [[cell textLabel] setText:[array objectAtIndex:[indexPath row]-1]];
    }
    return cell;
}
于 2013-04-15T02:15:54.863 回答
1

如果您希望表格的顶部是“粘性的”,为什么不考虑使用该字符串作为部分标题或标题?在这种情况下,标题始终可见,直到下一部分(例如,如果您有两个部分)完全显示在屏幕上。

无论如何,在我当前的一个项目中,我需要做与您正在做的事情大致相同的事情,并且我在第 0 行中返回了一个静态字符串(当表格视图向下滚动时,它会从屏幕顶部滚动)。

在我的 UITableViewDataSource 方法中,我总是将静态单元格添加到我的数组中的对象数中,在我的“ cellForRowAtIndexPath:”方法中,当 indexPath.row 不为零时,我将行加一。如果它为零,我返回我的静态字符串。

dark_knight 提供了一些很好的示例代码来说明我向您描述的内容。所以给他/她+1。

于 2013-04-15T02:15:11.637 回答