如何使用swift从同一个xib访问UIView

时间:2014-07-09 07:42:55

标签: ios uiview interface-builder swift

让我在这里解释我的问题,我正在开发一个项目,其中我有一个带有UIView的xib文件。我所做的是,我在同一个xib中创建了另一个UIView,我需要在使用swift的按钮操作中在我的xib视图中显示它。

注意:如果我倾向于通过编程方式执行此操作,它可以正常工作,但问题在于我正在使用xib。 (testview)是我在xib中创建的视图。

 class tableClass: UIViewController {

    @IBOutlet var testview : UIView

    override func viewDidLoad() {
       super.viewDidLoad()
       println(testview)    **///// Return nil  /////**
       testview=UIView(frame: CGRect(x: 0, y: 0, width: 200, height: 200)) as UIView

       println(testview)    **///// Return nil  /////**
       self.view.bringSubviewToFront(testview)
       self.view.addSubview(testview)
     }
 }

先谢谢。请让我知道,你的答案和宝贵的想法。

1 个答案:

答案 0 :(得分:0)

我通过在ViewDidLoad方法中初始化我的UIView解决了上述问题。这是我在didLoad方法上写的行

class tableClass: UIViewController {

@IBOutlet var testview : UIView = nil

override func viewDidLoad() {
   super.viewDidLoad()
   testview.frame = CGRectMake(0, 0, 0, 0)
   self.view.addSubview(testview)
 }}

在这之后,我可以在类的任何地方更改UIView框架,如下所示。快乐的编码..

testview.backgroundColor = UIColor.greenColor()
testview.frame = CGRectMake(50, 50, 50, 50)