从NavigationController对可重复使用的TableViewController进行编程初始化

时间:2009-09-20 22:55:50

标签: iphone uinavigationcontroller uitableview

我想从Nib文件以编程方式创建一个导航控制器,并添加一个表视图控制器(作为其根控制器)。需要使用可以更改的数据集初始化表视图控制器。

这样我可以在不同的两个地方重用表视图控制器(一个显示所有数据的列表,另一个显示子选择的搜索)。表视图控制器需要设置某些属性来控制它显示的数据。

因此,我的应用程序的高级视图看起来像这样

                  TabBarController 
                   /           \  
NavigationController1          NavigationController2
       |                                 |
TableViewController (all data)        SearchController
        |                                     |
    DrillDown                        TableViewController (search results)
                                              |
                                          DrillDown

除了显示的数据外,两侧的表视图控制器完全相同。

目前TabBarController位于主nib文件中。 NavigationController2在nib文件中设置,而NavigationController1是从不同的nib文件创建的,并在代码中添加到TabBarController(因此我可以设置它显示的数据)。然后NavigationController1以编程方式添加TableViewController。 SearchController在按钮操作上以编程方式加载TableViewController,并缩小数据以提供搜索结果。

我使用哪些功能(以及在哪里设置)以及如何设置表视图控制器的基础数据?

1 个答案:

答案 0 :(得分:0)

我通过编程方式而不是从NIB创建NavigationController1来解决问题。