Iphone 初学者和积木

Iphone 初学者和积木,iphone,objective-c,objective-c-blocks,Iphone,Objective C,Objective C Blocks,简单的问题 我有一个tableViewController,它将显示搜索结果列表 我想创建一个基于块的回调,我想这就是你所说的 我将演示viewController [searchResultController showSearchResults //BlockCode here { //did select this item... }]; 但是使用一个块,这样我就可以检测从tableview而不是使用委托方法所做的选择 问题是我不知道如何实现这一点。关于如何执行此操作,是否有好的教

简单的问题

我有一个tableViewController,它将显示搜索结果列表

我想创建一个基于块的回调,我想这就是你所说的

我将演示viewController

[searchResultController showSearchResults //BlockCode here {

//did select this item...

}]; 
但是使用一个块,这样我就可以检测从tableview而不是使用委托方法所做的选择


问题是我不知道如何实现这一点。关于如何执行此操作,是否有好的教程或简单的示例?

您的搜索结果控制器需要具有块属性。此块应定义为无返回类型,并应采用表示所选项的任何对象的参数

在显示搜索结果控制器之前,请将块属性设置为您希望为回调执行的任何操作


在“搜索结果”控制器中,当选定行时,执行块,传入选定对象。此方法或块本身也应关闭控制器

你为什么要这样做?要做到这一点可能比只实现委托和didSelectRowatindex要困难。您可以查看现有代码,您可以找到许多添加块回调的UIAlertViews类别。我这样做是因为我想创建一个类来处理与视图控制器分离的数据。所以我创建了一个返回1个结果的方法。。我首先搜索一些项目。如果找到1项,则返回一个结果。如果返回2个或更多结果,我需要显示searchResultsViewController,并由用户决定。我需要用显示结果的方法得到答案。除非我想使用代理,但我想使用块,因为这是我需要学习的新东西。