如何使用indexpath值居中uitableview选择

时间:2011-10-06 20:46:45

标签: iphone ios uitableview nsindexpath

我正在从子视图中保存indexPath选择并将其传递给带有委托的父视图。当我从主视图返回到我的子视图时,我将indexPath传回给它,并向用户显示他们之前选择的单元格,并在tableviewcell的附件视图中打勾。

一个问题是,如果用户从一个相当大的列表中选择了一个单元格,很难找到他们再次选择的单元格,因为他们想要改变它(因为他们犯了错误)

我想知道他们是否可以使用indexPath或类似方法将以前选中的uitableview单元格置于屏幕中心?

UPDATE ::

这是一个图形视图,显示我想要实现的目标,使其更容易理解..

第一步:选择单元格然后转到子视图并选择要传递回主视图的单元格(值)(保存所选单元格的indexPath) enter image description here

第二步:用户想要更改他的选择或犯了错误,并选择了他们选择的单元格以下的单元格...重复前面的步骤,但在视图的中心显示先前选择的单元格。

enter image description here

2 个答案:

答案 0 :(得分:12)

您是否尝试过以下功能

[tableView scrollToRowAtIndexPath: atScrollPosition:UITableViewScrollPositionMiddle animated:YES]

答案 1 :(得分:0)

UITableView是UIScrollView的子类 - 尝试设置内容偏移量(计算出单元格高度和indexPath的大小)。

[tableView setContentOffset:CGPointMake(0, indexPath.row*cellHeight) animated:YES];

应该有效。您可能希望以不同的方式进行数学运算。