0

我试图在表格上方显示一个搜索栏,其中包含最近搜索的列表,一旦有人输入搜索词,这些搜索将切换到匹配的搜索结果。

我想设置一个自定义类MySearchViewController作为执行搜索和管理将搜索结果显示回表的委托,以便我可以分离代码并且在默认控制器中没有条件语句。

我找到了一堆描述如何在代码中执行此操作的示例,但我无法弄清楚如何使用 Interface Builder 来执行此操作。

我已经尝试将一个新的视图控制器拖到我的 xib 中,并将自定义类设置为MySearchViewController,然后从SearchDisplayController这里拖出插座:http: //goo.gl/RgmwG

我还尝试将 Object 拖入 objects 列并将此类更改为MySearchViewController.

但我感觉完全迷失了,真的只是随机尝试。我猜我还需要为SearchDisplayController某个地方创建一个属性/IBOutlet,但又丢失了。

如果有人对如何去做这件事有参考,我会很高兴!

4

1 回答 1

2

像大多数问题一样,回想起来似乎很明显。

  • 在界面生成器(橙色立方体)中添加一个“对象”占位符。
  • 将对象自定义类更改为您希望成为委托的类 - 例如MySearchViewController
  • 从标准中删除默认插座SearchDisplayContoller以与MySearchViewController对象连接(见屏幕截图)
  • 确保新委托有一个到父视图的出口(在我的例子中View
  • 确保委托类是从某个地方启动的

    // I did this from the parent ViewConroller, but probably better from the main app delegate?  
    @property (strong, nonatomic) IBOutlet MSSearchViewController *searchViewController;   
    

希望这可以帮助其他也被卡住的人!

MySearchViewController 的插座

于 2012-06-05T13:59:12.033 回答