在tableview中添加单元格数组时查看最后一个单元格

时间:2013-08-06 06:37:52

标签: ios objective-c uitableview

我需要在tableview单元格中显示最后一个单元格记录。每次我都会在表视图中添加新数组。我将重新加载tableview单元格。现在它显示了第一个细胞的记录。任何人请告诉我如何显示最后一个单元格。

// Customize the appearance of table view cells.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {


static NSString *CellIdentifier = @"TrackDataTimeCell";
TrackDataTimeCell *cell = (TrackDataTimeCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
    @autoreleasepool {
        [[NSBundle mainBundle] loadNibNamed:@"TrackDataTimeCell" owner:self options:nil];
        cell = (TrackDataTimeCell *) cellChallengeFriends;
        cellChallengeFriends = nil;
        cell.selectionStyle = UITableViewCellSelectionStyleNone;
    }
}

if (!cell) {
    cell =(TrackDataTimeCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];


    UIActivityIndicatorView *activityIndicatorView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
    cell.accessoryView = activityIndicatorView;

}
NSArray *tableData = [NSArray arrayWithObjects:@"Egg Benedict", @"Mushroom Risotto", nil];
NSArray *tableData1 = [NSArray arrayWithObjects:@"test1", @"test2", nil];


[cell.deleteButton  addTarget:self action:@selector(deleteButtonAction:) forControlEvents:UIControlEventTouchUpInside];
cell.deleteButton.tag = indexPath.row;


cell.nameList.text= [tableData objectAtIndex:indexPath.row];
cell.marklist.text= [tableData1 objectAtIndex:indexPath.row];


return cell;

}


- (IBAction)addBillingItems:(id)sender
 {

    rowVal=rowVal+1;
    [nameList addObject: self.codeAdd.text];
    [marklist addObject: selectDate];

    [tbl reloadData];

}

请查看http://postimg.org/image/g0dzs0r2p/

上的示例图片

我有5个细胞。现在它显示了前四个。滚动后显示5,但我希望第一次显示最后一个单元格。请帮帮我

3 个答案:

答案 0 :(得分:0)

你必须设置较少的tableview框架。如果你有iPhone tableview框架然后将框架设置为cgrectmake(0,0,320,430)。如果这不能解决你的问题,那么添加uitableview:viewforheaderinsection方法。只需添加uiview并设置框架如cgrectmake(0,0,320,1)。这将设置表格的框架以及显示所有单元格。

答案 1 :(得分:0)

您可以使用它自动滚动到最后插入的单元格。

    CGPoint bottomOffset = CGPointMake(0, self.tableView.contentSize.height - self.tableView.bounds.size.height + 150);
    if ( bottomOffset.y > 0 ) {
        [self.tableView setContentOffset:bottomOffset animated:YES];
    }

150 值是在tableView中的单元格后添加额外空格。它是可选的,即如果你想要在单元格之后有额外的空间,你可以使用它

答案 2 :(得分:0)

您的问题很容易解决。只需使用tableView的方法

    [tbl scrollToRowAtIndexPath:[NSIndexPath indexPathForRow: rowVal inSection:0]
                      atScrollPosition:UITableViewScrollPositionBottom
                              animated:YES];

只需在[tbl reloadData]

之后调用即可