10

我知道我可以删除原来的 View Controller 并将 Table View Controller 放在 Storyboard 中的位置,但这需要我重新建立前后视图控制器之间的关系。

有没有更简单或更方便的方法在设计时动态转换对象的类型?这似乎是一项非常常见的任务(至少在我自己的项目中),我想在 Xcode 中有一个选项。

4

4 回答 4

2

据我所知,Xcode 中没有可让您执行此操作的 UI。但是,您可以在 xml 编辑器中打开故事板文件(激活版本编辑器将执行此操作)并将节点的名称从 更改<viewController ...><tableViewController ...>. 不要忘记还将结束标记更改为</tableViewController>.

于 2013-11-04T11:05:47.433 回答
2

我所做的是在 IB 中创建一个 UITableViewController,用文本编辑器打开 Storyboard,然后将里面的所有节点从 UIViewController 复制到 UITableViewController。

我认为通过这种方式删除重要内容的风险较小。

在复制部分对象之前,请确保两个 tableviews(UIViewController 和 UITableViewController)具有相同的属性集,例如:静态或动态单元格、样式(普通或分组)等。

于 2016-03-26T19:09:18.263 回答
0

在 Xcode 中,打开“实用程序”窗格(从右侧显示),单击“身份检查器”,然后在“自定义类”区域中,选择不同的类。但是请注意,这不会更改链接到控制器中的视图。您需要删除视图并添加 UITableView。然后可能必须建立一些委托连接。

我已经做了很多次你描述的事情。有时我删除目标并重新开始;有时我会按照我的描述进行操作并“手动”转换。

于 2013-04-27T23:14:39.267 回答
0

以下内容并不能完全回答这个问题,但我认为它可能会回应问题的意图。

用表视图控制器和表视图替换常规视图控制器和视图的最简单方法是将表视图控制器从对象菜单拖到画布的空白部分,创建一个新场景。如果表格视图场景应该是您应用的第一个视图,请将指向视图控制器场景的箭头拖动到新场景。现在,如果您不需要旧视图控制器中的任何内容,只需将其删除即可。

请参阅此处的教程。

但是,如果您希望能够从表视图深入查看详细视图,那么您真正想要的可能是导航控制器。导航控制器对象默认创建一个表视图场景作为它的根视图控制器。

于 2017-06-11T17:22:12.143 回答