繁体   English   中英

如何在2个ViewControllers Objective-C上添加UIView

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM