[英]How to add a UIView on 2 ViewControllers Objective-C
TLDR; 如何在2个不同的ViewController上使用相同的UIView? 使用Objective-C
我正在为应用程序设置一个小的设置类型选项。
有一个按钮,当按下该按钮时会弹出一个UIView,该UIUI可以访问某些UISwitch以控制某些设置,然后在UIView上单击“确定”按钮以将其关闭。 我通过使弹出窗口的Alpha值为1,隐藏时为0来控制弹出窗口。
我需要该UIView在2个不同的ViewController上可用。 而且UISwitch状态需要为2个ViewController同步
谢谢!
您可以创建XIb并将其加载到不同的View控制器上
我可以在Swift中为您提供帮助。
第1步-创建一个XIB并为其分配一个UIView。
第2步-如下所示在各自的视图控制器中调用该视图
var sampleoneView: SampleView?
var sampleTwoView: SampleView?
如下初始化这些视图
sampleoneView = SampleView.initSampleView(X vX:CGFloat, Y vY:CGFloat, width: CGFloat, height: CGFloat)
sampleTwoView = SampleView.initSampleView(X vX:CGFloat, Y vY:CGFloat, width: CGFloat, height: CGFloat)
其中initSampleView函数的定义如下
public class func initSampleView() -> SampleView{
let sampleView:SampleView = Bundle.main.loadNibNamed("SampleView", owner: self, options: nil)?.last as! SampleView
sampleView.frame = CGRect(x: vX, y: vY, width: width, height: height)
return sampleView
}
有一个按钮,当按下该按钮时会弹出一个UIView,该UIUI可以访问某些UISwitch以控制某些设置,然后在UIView上单击“确定”按钮以将其关闭。 我通过使弹出窗口的Alpha值为1,隐藏时为0来控制弹出窗口。
因此,这不仅是一个视图及其子视图,而且是对它们进行操作的一整套控制器行为。 因此,这需要是一个用其视图实例化两次的子视图控制器。 在两个位置的情节提要中使用“容器视图”,而“嵌入”脚本指向相同的视图控制器及其视图。
而且UISwitch状态需要为2个ViewController同步
当用户在视图中进行更改时,将所有必需的信息写入UserDefaults中,并在视图控制器出现时阅读并遵守。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.