OOP 是否适用于 Xcode 故事板?
Does OOP apply to Xcode storyboards?
我正在开发闪存卡应用程序。用户分别选择问题和答案类别。一些问题类别是文本 ("What is the capital of Brazil?",其他问题类别是图像 ("This is the national flag of what country?")。
给定回合中的问题将始终是文本或始终是图像。因此,我的故事板中有两个单独的场景,每个选项一个。
90%的场景是相同的:问题计数器,正确和错误答案计数器,4 UIButton
s 用于选择题答案,UIButton
到 return 到主菜单。同样,每个 UIViewController
子类的 90% 代码也是相同的,因此我将其抽象为一个超类。
但是...可以对 visual 元素做同样的事情吗?就像每个页面上都有相同页眉的 PowerPoint 演示文稿。
我希望在我的场景中有两个 "layers"....第一层呈现公共元素并由单个父级控制 VC,第二层呈现元素具体到每个场景,由对应的VC控制。
我是在做梦吗?还是有什么我还没有学到或想通的?
写这篇文章时,我认为自定义视图可能是解决方案,但我无法理解它。即使使用自定义视图,我仍然必须每次都与公共元素建立联系,不是吗?
我们非常欢迎任何想法、提示和建议。
你描述的完全没有问题!您可以创建一个超类,我们称它为SuperVC
(它本身是UIViewController
的子类),向其添加IBOutlets
,然后创建SuperVC
的子类,我们称它们为SubVC1
和 SubVC2
,并在其中创建 IBOutlets
。然后,在您的 Storyboard 中,您可以将适当的元素连接到所有这些 IBOutlets
,只需确保您在 Assistant Editor 中打开正确的文件即可(逻辑上,如果您从 SuperVC
连接 IBOutlets
您需要在 Assistant Editor 中打开 SuperVC
,同样对于 SubVC1
和 SubVC2
).
顺便说一下,您也可以使用自定义 UIViews
来做到这一点。同样,您还可以选择是在 Interface Builder 中还是在代码中创建这些...所以真的,这个问题没有技术限制:)
我正在开发闪存卡应用程序。用户分别选择问题和答案类别。一些问题类别是文本 ("What is the capital of Brazil?",其他问题类别是图像 ("This is the national flag of what country?")。
给定回合中的问题将始终是文本或始终是图像。因此,我的故事板中有两个单独的场景,每个选项一个。
90%的场景是相同的:问题计数器,正确和错误答案计数器,4 UIButton
s 用于选择题答案,UIButton
到 return 到主菜单。同样,每个 UIViewController
子类的 90% 代码也是相同的,因此我将其抽象为一个超类。
但是...可以对 visual 元素做同样的事情吗?就像每个页面上都有相同页眉的 PowerPoint 演示文稿。
我希望在我的场景中有两个 "layers"....第一层呈现公共元素并由单个父级控制 VC,第二层呈现元素具体到每个场景,由对应的VC控制。
我是在做梦吗?还是有什么我还没有学到或想通的?
写这篇文章时,我认为自定义视图可能是解决方案,但我无法理解它。即使使用自定义视图,我仍然必须每次都与公共元素建立联系,不是吗?
我们非常欢迎任何想法、提示和建议。
你描述的完全没有问题!您可以创建一个超类,我们称它为SuperVC
(它本身是UIViewController
的子类),向其添加IBOutlets
,然后创建SuperVC
的子类,我们称它们为SubVC1
和 SubVC2
,并在其中创建 IBOutlets
。然后,在您的 Storyboard 中,您可以将适当的元素连接到所有这些 IBOutlets
,只需确保您在 Assistant Editor 中打开正确的文件即可(逻辑上,如果您从 SuperVC
连接 IBOutlets
您需要在 Assistant Editor 中打开 SuperVC
,同样对于 SubVC1
和 SubVC2
).
顺便说一下,您也可以使用自定义 UIViews
来做到这一点。同样,您还可以选择是在 Interface Builder 中还是在代码中创建这些...所以真的,这个问题没有技术限制:)