Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import UIKit
- enum line_position {
- case line_position_top
- case line_position_bottom
- }
- extension UIView {
- func addLine(position: line_position, color: UIColor, width: Double) {
- let lineView = UIView()
- lineView.backgroundColor = color
- lineView.translatesAutoresizingMaskIntoConstraints = false // This is important!
- self.addSubview(lineView)
- let metrics = ["width": NSNumber(value: width)]
- let views = ["lineView": lineView]
- self.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H:|[lineView]|", options: NSLayoutConstraint.FormatOptions(rawValue: 0), metrics: metrics, views: views))
- switch position {
- case .line_position_top:
- self.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:|[lineView(width)]", options: NSLayoutConstraint.FormatOptions(rawValue: 0), metrics: metrics, views: views))
- break
- case .line_position_bottom:
- self.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:[lineView(width)]|", options: NSLayoutConstraint.FormatOptions(rawValue: 0), metrics: metrics, views: views))
- break
- }
- }
- func animate(type: CATransitionType, subtype: CATransitionSubtype, duration: CFTimeInterval) {
- let transition = CATransition()
- transition.type = type
- transition.subtype = subtype
- transition.duration = duration
- layer.add(transition, forKey: "CustomAnimation117")
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement