ios - 根据限定符将变量设置为不同的自定义 View (Swift)

标签 ios swift view uiviewcontroller

我有一个 View Controller ,每次初始化时都会在 View 之间切换(即第一次初始化时应使用 View1,第二次应使用 View2,等等)。

如何使用一个变量并将其设置为这两个 View 之一,具体取决于它应该是哪一个?

我尝试将 View 声明为 UIView,然后将其实例化为 View1 或 View2,但随后无法访问 View1/View2 内的属性,因为“UIView 没有名为 X 的属性”。每次需要访问属性时,我都可以将 View 转换到 View1 或 View2,但这看起来很草率。

最佳答案

您可以为 View1 使用一个变量,为 View2 使用另一个变量,然后使用 bool 值或枚举来指示当前正在呈现哪个 View 。

如果您只想对两个 View 使用一个变量,则两个 View 必须确认相同的协议(protocol),否则您必须使用向下转换。像这样的东西:查看为! MyView1查看为! MyView2 绕过类型检查。

关于ios - 根据限定符将变量设置为不同的自定义 View (Swift),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51826110/

相关文章:

javascript - ReactNative - 无法从 native 模块调用函数

ios - 无法订阅 pubnub channel (错误 107)

ios - 未找到 GAI.h 文件

MySql "view"、 "prepared statement"和 "Prepared statement needs to be re-prepared"

ios - 关闭操作表时 ShareKit 失去焦点

ios - 快速从http请求中检索json数据

objective-c - Decimal 在 Swift 3 中作为 NSDecimal 而不是 NSDecimalNumber 导入到 Objective C

ios - ARKit - 仅更新世界坐标原点

ObservedObject 更改时 SwiftUI View 未更新

ruby-on-rails - 如何在 Rails 的 application.html.erb 中显示不同的 header ?