【问题标题】:How to add UITableView to one of several subviews using storyboard如何使用情节提要将 UITableView 添加到多个子视图之一
【发布时间】:2014-05-25 23:00:34
【问题描述】:

我有一个 UIViewController,上面有两个 UIView。在导航栏中,当按下一个按钮时,会显示其中一个 UIView,当按下另一个按钮时,会显示另一个 UIView。我想在其中一个视图上放置一个 UITableView。但是,UITableView 要求 UIViewController 使用 UITableViewDelegate 和 UITableViewDataSource。为包含 UTTableView 的 UIView(子视图)实现了此功能后,当我单击另一个不包含表格的视图的按钮时,我会收到错误并且应用程序会发出声音。

我假设(可能是错误的)我的问题是我试图对两个子视图使用相同的 UIViewController,但只有一个包含一个表。

问题 1) 是否可以按照我上面的描述进行操作?意思是,如果我遇到问题,则说明连接不正确。

所以,我走上了创建两个独立 UIViewControllers 的道路;每个视图一个。不确定这是聪明的方法。现在我只是在寻找最好的方法来做到这一点的建议。提前感谢您的帮助。

为了更清楚我想要做什么。我希望在单击栏上的第一个按钮时将蓝色视图放置在粉色视图的位置,并且我希望在单击第二个按钮时将黄色视图放置在粉色视图的位置。基本上粉红色的视图永远不会显示,甚至可能不需要在 UtilityViewController 上。

【问题讨论】:

  • “我走上了创建两个独立 UIViewControllers 的道路” 这是完全正确的。假设一个视图控制器是“ShowDogs”。假设另一个视图控制器是“ExoticCarClubSignUp”。这正是你做 iOS 应用程序的方式。每一个都是 UIViewController 的子类。 (注意: 很多时候,人们会称它们为“ShowDogsViewController”和“ExoticCarClubSignUpViewController”。对我来说,这是浪费能源并导致全球变暖。我的意思是......“它们还能是什么?” 这是一个 iOS 应用程序......一切都是一个视图控制器!)去吧!
  • 只是为了清晰。当您单击按钮时,Apple 会自动为您提供一个通用的“UIViewController”。你懂的?可以说,这是一个非常糟糕的主意。 (请注意,在现实世界中,您永远都不会使用它。)他们应该做的是给您一个通用的“YourFunctionViewController”......然后您将其编辑为“ShowDogsViewController”和“ ExoticCarClubSignUpViewController”。我希望这是有道理的!

标签: objective-c uitableview uiview uicontainerview


【解决方案1】:

将每个都作为 UIViewController(或其子类)是您尝试做的事情的方法。 UITabBarController 已经这样做了:https://developer.apple.com/library/ios/documentation/uikit/reference/UITabBarController_Class/Reference/Reference.html

【讨论】:

  • 很好的答案。事实上,露西猫,我会鼓励你不要使用 UITabBarController 一开始 .. 它可能有点像拐杖。加油!
  • @JoeBlow - 我不想使用 UITabBarController。所以现在,我试图弄清楚如何将 User SettingsView 推入 UtilityView 并使用单独的控制器。不像我希望的那样直截了当。看起来我需要使用 ContainerView。你怎么看?
  • 嗯,我想我不明白你在做什么。您是否可能正在寻找 addChildViewController 和相关功能?请注意,正如我上面所说:“我走上了创建两个独立 UIViewControllers 的道路” 这是正确的,你应该做什么。但是我可能不明白你在这里的计划。不清楚您是否说您希望表格视图在“其他窗口内”运行。因此,您有一些视图(“显示所有狗”或其他任何内容),然后您希望出现“小桌子”(例如,在右上角..随便)。也许您应该只发布应用程序的图片。
  • @JoeBlow - 我将此添加到原始问题中。但对你来说,我也会把它包括在这里。我希望在单击栏上的第一个按钮时将蓝色视图放置在粉色视图的位置,并且我希望在单击第二个按钮时将黄色视图放置在粉色视图的位置。本质上,粉红色的视图永远不会显示,甚至可能不需要在 UtilityViewController 上。
  • @JoeBlow - 我终于在这里问了一个新问题:stackoverflow.com/questions/23399061/…。我不是懒惰,我真的无法弄清楚如何做到这一点。好像应该没那么难。我开始觉得自己很笨。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-12
  • 1970-01-01
  • 1970-01-01
  • 2016-06-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多