我有一个问题:我想在UITableView上添加最新单元格的indexPath。 这是我的代码:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
//[_tableView clearsContextBeforeDrawing];
static NSString *simpleTableIdentifier = @"SimpleTableItem";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier];
}
cell.tag = indexPath.row;
CGRect frame1 = CGRectMake(10, 25, 80, 10);
UILabel *lbl2= [[UILabel alloc]initWithFrame:frame1];
[lbl2 setFont:[UIFont fontWithName:@"Helvetica" size:8.5]];
[lbl2 setTextColor:[UIColor blackColor]];
[lbl2 setTextAlignment:UITextAlignmentLeft];
lbl2.text = [FileDateArray objectAtIndex:indexPath.row];
[cell addSubview:lbl2];
[lbl2 release];
deleteIndexPath = indexPath.row;
NSLog(@"Delete index:%@",deleteIndexPath);
return cell;
}
在我的tableview上只添加了一行时间。 当我在控制台上打印时, deleteIndexPath为空。你有什么建议吗?
答案 0 :(得分:0)
我不清楚你想要什么。我可以假设以下三种可能性。请检查是否有你想要的。如果不是,请告诉我您想要的索引路径以及您想要访问它的位置。
如果你想获得tableView的最后一个索引路径,你可以尝试如下:
NSIndexPath *lastIndexPath = [NSIndexPath indexPathForRow:[FileNameArray count] - 1 inSection:0];
这将返回您的tableview可能的最后一个索引路径。
如果您希望获得可见单元格的索引路径而不是使用
NSArray *visibleCellIndexPaths = [yourTableViewObject indexPathsForVisibleRows];
如果要获取最后一个可见单元格的索引路径,可以使用
[[yourTableViewObject indexPathsForVisibleRows] lastObject];
<强>更新强>
你想获得tableview第一行的索引路径,而不是你可以使用第一个解决方案只需要在行中传递0。
NSIndexPath *lastIndexPath = [NSIndexPath indexPathForRow:0 inSection:0];
因为索引从行和节开始于0。由于您只有一个部分,因此您将获得0个部分索引,并且您希望获得第一行,因此第一行将有0个索引。
希望这会对你有所帮助。