gpt4 book ai didi

swift - 在 ViewController 中导入自定义 UIView

转载 作者:行者123 更新时间:2023-11-28 08:02:22 25 4
gpt4 key购买 nike

我对 Swift 语言很陌生。现在我已经使用 swift 3 在我的项目中实现了自定义 UIView。我想从我的 viewController 访问该 UIView。我尝试像通常在 objective-c 中那样在我的 View Controller 中导入该自定义 UIView。使用 import PinTitleView。但它不起作用。它仍然显示“没有这样的模块 PinTitleView”。我不知道要处理这个。谁能帮帮我?

最佳答案

  1. 创建 XIB 文件
  2. 创建 UIView 类 SideView:UIView
  3. 选择 XIB 文件 > 选择文件所有者 > 选择 Identity Inspector设置类(class)名称
  4. 4.

在 UIView 类中使用此代码

class SideView: UIView {

var view:UIView!

func loadViewFromNib() -> UIView {

let bundle = Bundle(for: type(of: self))
let nib = UINib(nibName: "SideView", bundle: bundle)
let view = nib.instantiate(withOwner: self, options: nil)[0] as! UIView

return view
}

func xibSetup() {
view = loadViewFromNib()
view.frame = bounds
view.autoresizingMask = [UIViewAutoresizing.flexibleWidth, UIViewAutoresizing.flexibleHeight]
addSubview(view)
}

override init(frame: CGRect) {
super.init(frame: frame)
xibSetup()
}

required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)!
xibSetup()
}
}
  1. 声明变量

    var sideSubView:SideView!

  2. 像这样使用

    sideSubView = SideView(frame: CGRect(x: sender.frame.origin.x + sender.frame.size.width - 200 ,y: sender.frame.origin.y + 40,width: 200,height: 200 )) self.view.addSubview(sideSubView)

关于swift - 在 ViewController 中导入自定义 UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46273492/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com