swift 純代碼自定義控件



1、創建自定義控件


import UIKit
 
class CustomView: UIView {
    var lab:UILabel!
    var btn:UIButton!
 
    /************ 將需要添加的子控件在這里進行初始化 *****************************/
    override init(frame: CGRect) {
        super.init(frame: frame)
 
        //初始化
        lab = UILabel()
        lab.textAlignment = .center
        lab.font = UIFont.systemFont(ofSize: 12)
        self.addSubview(lab)
 
        btn = UIButton()
        self.addSubview(btn)
    }
 
    /************ 設置子控件的位置 *****************************/
    override func layoutSubviews() {
        super.layoutSubviews()
 
        // 設置 子控件 frame, 也可以在這里使用自動布局
        lab.frame = CGRect(x:10, y:10, width:100, height:40)
        btn.frame = CGRect(x:lab.frame.origin.x, y:lab.frame.maxY + 10, width:100, height:40)
    }
 
    /************ 傳入model對子控件進行配置,這里暫用NSObject *****************************/
    func setUp(model:NSObject) {
        lab.text = "你好"//model.xx
        btn.setTitle("確定", for: .normal) //title:model.xx
    }
 
    required init?(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
}

2、使用自定義控件

//純代碼 view
let view = CustomView()
view.frame = CGRect(x:10, y:100, width:200, height:100)
view.backgroundColor = UIColor.cyan
view.setUp(model: "" as NSObject)
self.view.addSubview(view)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM