iOS7:如何设置UISearchDisplayController的navigationItem属性?

时间:2013-09-24 18:14:39

标签: objective-c ios7 uinavigationitem uisearchdisplaycontroller

我有一个UISearchDisplayController,可以在我的iOS6应用程序中完美运行。现在,我想将此应用程序迁移到iOS7。

我读过Apple文档,它说的如下:

Starting in iOS 7.0, you can use a search display 
controller with a navigation bar (an instance of 
the UINavigationBar class) by configuring the 
search display controller’s displaysSearchBarInNavigationBar 
and navigationItem properties.

displaysSearchBarInNavigationBar很容易设置。但我对navigationItem的唯一线索是:

Important: The system raises an exception if you 
attempt to set the titleView property for a search 
display controller’s navigation item.

我似乎无法找到如何设置navigationItem的示例。如何对我的navigationBar说嵌入我的searchBar?有人可以给我看一个例子吗?

提前谢谢!

1 个答案:

答案 0 :(得分:4)

UISearchDisplayController创建和管理在导航栏中显示搜索栏所需的导航项。您不需要创建自己的,但在 searchDisplayController.navigationItem设置为YES(导航项目是懒惰创建)之后,您可以通过displaysSearchBarInNavigationBar 访问它。

当询问带有搜索显示控制器的视图控制器的navigationItem时,搜索显示控制器将返回其项目(包含搜索栏)而不是视图控制器。