Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import UIKit
- import PlaygroundSupport
- class Target {
- @objc func changeColor(sender: UIButton?) {
- guard let button = sender else { return }
- button.backgroundColor = UIColor.purple
- }
- }
- let viewController = UIViewController()
- viewController.view.frame = CGRect(x: 0, y: 0, width: 200, height: 200)
- viewController.view.backgroundColor = UIColor.red
- let v = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 100))
- v.backgroundColor = UIColor.green
- let l = UILabel(frame: CGRect(x: 0, y: 0, width:0, height: 0))
- l.text = "Hello"
- viewController.view.addSubview(v)
- v.addSubview(l)
- l.sizeToFit()
- let layer = CALayer()
- layer.borderWidth = 1.0
- layer.borderColor = UIColor.red.cgColor
- let anim = CABasicAnimation(keyPath: "bounds")
- anim.duration = 1.0
- anim.fillMode = kCAFillModeForwards
- anim.fromValue = CGRect(x: 0, y: 0, width: 10, height: 10)
- anim.toValue = CGRect(x: 0, y: 0, width: 100, height: 100)
- anim.isRemovedOnCompletion = true
- layer.add(anim, forKey: "bounds")
- v.layer.addSublayer(layer)
- layer.bounds = CGRect(x: 0, y: 0, width: 100, height: 100)
- let b = UIButton(type: .system)
- b.setTitle("Press Me", for: .normal)
- b.titleLabel?.textColor = UIColor.blue
- b.frame = CGRect(x: 100, y: 100, width: 0, height: 0)
- b.sizeToFit()
- viewController.view.addSubview(b)
- let target = Target()
- b.addTarget(target, action: #selector(target.changeColor(sender:)), for: .touchUpInside)
- PlaygroundPage.current.liveView = viewController.view
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement