2011-09-03 53 views

回答

0

如果您知道详细视图出现的原因,我不清楚。所以我会解释以防万一。如果你正在控制一个细节视图,那是因为你的代码中的某个地方正在推送这个细节视图。这取决于你正在使用什么样的UITableViewCell。如果您使用的默认样式之一,您的详细视图可能已在推之一:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 

- (void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath 

如果您使用的是自定义单元格,那么你就需要去寻找负责推动 那个详细视图的方法。

我认为一个好的办法是:

  1. 卸下推动无论它是。
  2. 如果您使用的是UITableViewCellAccessoryType,则不要使用UITableViewCellAccessoryType。
  3. 做类似的东西下面您tableView:didSelectRowAtIndexPath:

    • 查找在你的模型排列正确的答案行,根据挖掘细胞。
    • 使用该行号生成NSIndexPath
    • 使用NSIndexPathcellForRowAtIndexPath:
    • 呼叫setSelected:animated:在该小区找到正确的单元格以突出显示它。

注意:如果您的测验比的UITableViewCells适合在屏幕上,你应该滚动鼠标UITableView到正确的答案更好的UX量更多的答案。

+0

再次检查.. –

+0

问题是,当进行选择时,不会调用cellForRowAtIndexPath。 –

+0

,因为这不是委托调用的方法,它调用'tableView:didSelectRowAtIndexPath:'。 – rjgonzo

相关问题