我想访问选定的UITableViewCell并选择那个,
int b = lastIndexPath.row + 1; //lastIndexPath references to the current selected cell index path
NSIndexPath *myNextIndex = [[NSIndexPath alloc]initWithIndex:b];
[self tableView:table didSelectRowAtIndexPath:myNextIndex];
所以到目前为止一切正常,b值为2.但是当tableView:didSelectRowAtIndexPath:并且我想得到i的值时,
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
int i = indexPath.row;
//some other stuff
}
我得到的值是81809923,但是i的值应该是2。
我不知道为什么会这样。如果有人有任何想法请帮助。
感谢
答案 0 :(得分:0)
UITablleView
中的位置由部分和行键入(即使您的表只有一个部分)。 iOS SDK专门添加utility method,以便更轻松地使用表格视图。
在这种情况下,您可以使用它:
NSIndexPath* myNextIndex = [NSIndexPath indexPathForRow:b inSection:0]; //call 'retain' if you need to
至于您的81809923
值,这可能是偶然垃圾邮件,因为原始代码没有为row
的{{1}}字段分配任何值。