表视图didSelectRowAtIndexPath

时间:2012-02-24 01:14:44

标签: objective-c cocoa-touch uitableview xcode4.2 didselectrowatindexpath

我的项目有问题。我有一个包含子视图的表格视图。我也有一个搜索栏,因为我有一个多大的数组。我知道对于didSelectRowAtIndexPath,如果(indexpath.row == 0){...但是当我在搜索栏中查找单词时,当你选择它时,它会在第一个单元格中显示,它会将你发送到子视图数组的第一个字,因为它被设置为第一个单元格。我怎么能认为子视图链接到某个单词而不仅仅是行的整数,这样如果单元格单词是'Apple',那么它会将我发送到Apple子视图。

P.S。我正在使用带有segues的Xcode 4.2来改变我的项目。

1 个答案:

答案 0 :(得分:0)

问题在于你的方法。我认为将NSArray(或NSMutableArray)数据放在数据委托类的单元格中会更方便。因此,当您找到所需的单元格时,您可以使用此NSArray对象类实例的参数加载详细信息视图。例如,您在NSManagedObject中使用NSArray类的实例。 (这是非常常见的情况,因为使用了CoreData框架)。因此,您应该在目标视图中编辑init方法,以接收此类实例对象并使用它。这是面向对象编程的主要模式。或者也许我们之间存在一些误解,当你注意到“子视图”时你的意思是什么?如果您需要将表格滚动到依赖于搜索栏输入的计算位置,为什么您不喜欢使用indexPath最简单的方法?