在Swift中重新加载SubView

时间:2019-03-09 11:48:39

标签: ios swift uiscrollview subview

我正在开发iOS应用程序,并使用具有两个子视图的父页面,如下所示:

    var v1: assetType1VC = assetType1VC(nibName: "assetType1VC", bundle: nil)
    var v2: cityChart1VC = cityChart1VC(nibName: "cityChart1VC", bundle: nil)



    self.addChild(v1)
    self.addChild(v2)

    self.scrollView.addSubview(v1.view)
    self.scrollView.addSubview(v2.view)


    v1.didMove(toParent: self)
    v2.didMove(toParent: self)

    var v2Frame: CGRect = v2.view.frame
    v2Frame.origin.x = self.view.frame.width
    v2.view.frame = v2Frame

    self.scrollView.contentSize = CGSize(width: self.view.frame.width * 2 , height: 1)

但是,我的问题是所有两个子视图都同时加载。

我想要实现的是:我想在v2出现时重新加载它。 我曾经使用过viewWillAppear,viewDidAppear,但两者都无法与我一起使用

1 个答案:

答案 0 :(得分:0)

重新加载UIView的最简单但难看的方法是使用:

self.v2.setNeedsLayout()
self.v2.layoutIfNeeded()