2017-02-08 134 views
1

我有这样一个观点:在不同视图控制器中的相同视图?

Example: 按钮的每个人都有一个动作,当我点击他们做。而且这些按钮通过编码动态变化(如果语句...),当我点击某个按钮时,它会将我引导至其他不同的按钮值。此外,标签也会相应更改。

它就像一个测验的东西!

我想要的是当我点击一个按钮,它应该引导我(视图按钮)(区域)的不同布局。

Example OF Different layout 我正在考虑为每个我想要做的事情添加一个新的视图控制器,但这可能意味着100个视图控制器!我不知道这是否是正确的做法。有没有更好的办法?

+0

我会为每个按钮存储一个@ @ IBOutlet。然后,你可以改变文本,背景/任何你想要为每个按钮,当你按下其中一个 – Cake

回答

0

首先我会找到你想要的布局之间的相似之处。实现一个视图控制器,使所有这些相似性发生。例如:

  • 显示在顶部
  • 标签
  • 显示以下
  • 一步四个按钮来回布局之间
  • 显示不同类型的按钮根据他们的描述

然后你可以初始化您的视图控制器,并提供您的问题描述,潜在答案/按钮以及每个按钮的行为。我们说这是一个测验。所以你创建了一个包含Question的数组的类Quiz。每个Question都包含它自己的问题String以及四个按钮中的每一个的说明。这可能是形状和颜色或文本/答案。当然还有一些按钮操作。它可能只是布尔状态或更复杂的枚举。你得到的照片? (我的答案似乎与您的问题一样模糊。)

最后,您必须为您的要求编写整个说明。我会把它写入一个txt,csv,plist,json(无论是方便的写作和解析)并解析它。那将是最少的代码。

+0

我得到你说什么,但至于说明,我怎么能插入(形状,颜色等)在阵列然后将它们分别链接到@IBOutlet和IBAction按钮? – Rux77

+0

这取决于您的实施。如果你实现了一个UIButton子类,例如可以改变它的形状,只需将它从故事板拖到你的课堂上,就可以将它从故事板链接到'@ IBOutlet's。 '@ IBAction's一样,你必须植入(行为)。 Alternativeley可以在代码中完成所有工作,甚至可以从4按钮布局中删除和添加新按钮。 – cybergen

相关问题