保持在SplitViewController中选择MasterTableView行

时间:2012-05-10 04:28:14

标签: iphone uitableview uisplitviewcontroller

在我的SplitViewController中,基于DetailViewController中的一个动作,我使用NSNotificationCenter更新MasterViewController行,基本上是这样的:

Keeping MasterViewController and DetailViewController in sync

问题是,一旦完成对MasterViewController行的更新,就不再选择该行了。当我使用splitViews查看Apple的iPad应用程序时,如Note应用程序,总是会选择一行。我想做同样的事情,所以一切都在我的两个表之间保持同步。我可以在行上手动setSelected:YES animated:NO因为我有tableView的indexPath,但我仍然看到所选行的蓝色突出显示在再次设置之前闪烁。我不希望这样。

MasterViewController:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) {
        Scene *object = [[[DataManager sharedInstance] sceneArray] objectAtIndex:indexPath.row];
        self.detailViewController.detailItem = object;
    }
}

1 个答案:

答案 0 :(得分:0)

这是关键 - 在UITableViewController上设置此属性:

self.clearsSelectionOnViewWillAppear = NO;