ViewController
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
var mainView:MineView
super.viewDidLoad()
mainView = MineView()
mainView.frame = CGRect.init(x: 0, y: 0, width: 100, height: 100)
mainView.backgroundColor = UIColor.lightGray
self.view.addSubview(mainView)
mainView.sblock = { (str:String) in
mainView.mineBtn.setTitle(str, for: UIControl.State.normal)
}
}
}
TestView
import UIKit
class MineView: UIView {
var mineBtn:UIButton!
typealias SelectBlock = (String)->Void
var sblock:SelectBlock?
override init(frame: CGRect) {
super.init(frame: frame)
self.backgroundColor = UIColor.lightGray
self.setupView()
}
func setupView(){
mineBtn = UIButton.init(frame: CGRect.init(x: 0, y: 0, width: 100, height: 100))
mineBtn.setTitleColor(UIColor.black, for: UIControl.State.normal)
mineBtn.setTitle("000", for: UIControl.State.normal)
mineBtn.addTarget(self, action: #selector(ClickBtn), for: UIControl.Event.touchUpInside)
self.addSubview(mineBtn)
}
@objc func ClickBtn(){
self.sblock?("xk")
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}