2

也许这是两个不同的问题,但他们基本上问的是同一件事。我有一个单一视图应用程序,在我的屏幕上我有一个Table View和一个Collection View.

1)我想为我的表格视图和我的集合视图提供一个datasourcedelegate当然),但我不希望它在同一个(主)ViewController文件中(为了更清晰的代码)。但是界面生成器只允许我声明为datasource(和delegate)文件的所有者,即视图控制器。我怎样才能做到这一点?以编程方式声明是否正确?如果是这样,应该在哪里完成?或者,也许将数据源(和委托)与数据源分开ViewController不是最佳实践?

2)在我的表格视图的自定义单元格中,我有一个按钮,我不想在同一个地方(文件)处理按钮的操作,我处理行选择(委托 obj)。但是再一次,IB 只让我将操作连接到自定义单元类。如何将动作连接到另一个地方?

提前感谢您的回答,

4

3 回答 3

6

您应该使用对象库中的对象(蓝色立方体)。拖放到文件所有者所在的部分(文档大纲)。然后在身份检查器中将其设置为Outsider您想要的类(例如)。这将允许您将Outsiderobject 设置为委托/数据源,并且还允许您在IBAction那里编写 '。
诀窍是通过在 xib 内创建一个对象(这将在加载 nib 时完成),使该对象(类)在 xib 中可见。

另一件事,以编程方式设置委托或数据源并没有错,但是通过接口构建器更方便。

于 2013-02-28T15:10:38.920 回答
1

1)以编程方式进行。编写您自己的委托并在代码中分配它。清洁器。

2) 在 ViewController 类中连接按钮的操作。这很干净,这就是视图控制器的用途。打开助手编辑器,将“箭头”拖到头文件中。

于 2013-02-28T15:08:20.393 回答
0

问题一:

但是界面构建器只允许我将文件的所有者声明为数据源(和委托),即视图控制器。

问题2:

但是再一次,IB 只让我将操作连接到自定义单元类。如何将动作连接到另一个地方?

两者都有相同的答案:

您可以通过从界面生成器中选择来更改类。

在此处输入图像描述

于 2013-02-28T15:11:16.313 回答