如何在运行时预先选择表行?

时间:2015-01-27 18:01:05

标签: swift ios8 xcode6

我想在视图加载时预先选择splitView主控制器中的表格行,就像Apple在Ipad中的“设置应用”中使用“常规”选项一样。

我找到了一些建议使用

的地方
let indexPathForSelection:NSIndexPath = tableView.selectRowAtIndexPath(indexPath: self, animated: false, scrollPosition: UITableViewScrollPositionNone)

但Xcode无法识别scrollPosition代码:UITableViewScrollPositonNone作为有效标识符

这应该是一个简单的任务,但似乎没有人使用Swift解决它。

1 个答案:

答案 0 :(得分:2)

您的代码中存在一些错误。

你的第一个错误是,你不能像你那样使用selectRowAtIndexPath方法。首先,您必须设置NSIndexPath。像那样:

var index = NSIndexPath(forRow: yourRow, inSection: yourSection)

另外,你不能像在Objective-c中那样在Swift中使用UITableViewScrollPositionNone。你必须使用:

UITableViewScrollPosition.None

但我建议你在案件中使用Middle

UITableViewScrollPosition.Middle

为了获得你想要的结果,你应该做这样的事情:

var index = NSIndexPath(forRow: yourRow, inSection: yourSection)
tableView.selectRowAtIndexPath(index, animated: true, scrollPosition: UITableViewScrollPosition.Middle)