2014-07-21 97 views
1

我的程序没有明确的表格。只有来自“搜索栏和搜索显示控制器”视图的表格为searchDisplayController.searchResultsTableView。所以要创建它的自定义TableViewCell,我使用了一个xib文件。现在我需要从在xib文件中定义的自定义单元格继续定义到故事板中定义的ViewController?我怎么做?如何从xib文件uiview切换到故事板ViewController

换种说法:如何从一个自定义的“searchDisplayController.searchResultsTableView”的TableViewCell到的ViewController

背后的故事How do I add storyboard-based Header and CustomTableCell to a “Search Bar and Search Display Controller”

似乎有一个答案已经Segue公司,但我不明白这一点:Segue from Storyboard to XIB

回答

0

与任何表视图一样,您应该可以在searchDisplayControl类上设置UITableViewDelegate和UITableViewDatasource委托。然后在didSelectRowAtIndexPath方法中处理segue事件。我从来没有玩过搜索显示控制器,因为当我为了灵活性而进行任何相关搜索时,通常会分解搜索栏和表格视图,以及您如何说要在桌面视图中使用原型表视图单元格故事板。

但是,如果你在使用searchDisplayController设置,你可能有这样的事情脱身..

你不能从一个XIB Segue公司 - >故事板,或在2个不同的故事板。

您可以将对viewController的引用传递给每个tableViewCell,并按照这种方式访问​​segue。但是,为了未来的灵活性,我可能会在这种情况下亲自使用协议/代表。

+0

**这是一个旁道:**你说你总是保持SearchBar和表分开。我尝试过,但当数据源是服务器时它不工作?因此,如果你有一个git项目或一些示例代码,你不介意共享,请:我在这个阶段学习iOS,我很想知道我可能会做以下事情:用户使用searchBar在服务器上启动搜索,以及何时服务器响应到达数据通过表显示。 (对不起,我离题了,但听起来你可能知道iOS比我好很多)。 –

+0

此方法的另一个问题是让searchBar出现在NavigationBar –

+0

另外请注意,UISearchDisplayController在iOS 8中已弃用,所以最好避免使用它。 – Alex

0

正如我们在上面讨论的意见,这是更好地避免UISearchDisplayController因为它的iOS 8

弃用

因此,这将更好地使用类似的东西https://github.com/alexbutenko/SimpleUITableViewSearch

您可以使用self.navigationItem.titleView =搜索栏嵌入搜索栏进入导航栏。如果您有任何问题,请检查代码示例。

+0

你介意把它分解一下吗?我已阅读以下答案,并没有得到它:http://stackoverflow.com/questions/18401825/segue-from-storyboard-to-xib –