Swift 3: Add UIButton extension to ViewController
ios, swift-extensions, swift3, uibutton
Solution
Try this:
extension UIButton {
func createRectangleButton(buttonPositionX: Double, buttonPositionY: Double ,buttonWidth: Double, buttonHeight: Double, buttonTilte: String) {
let button = self // changes made here
button.frame = CGRect(x: buttonPositionX, y: buttonPositionY, width: buttonWidth, height: buttonHeight)
button.setTitle(buttonTilte, for: .normal)
button.backgroundColor = COLOR_WHITE
button.tintColor = COLOR_BLACK
}
}
Problem
I'm a beginner in iOS/Swift and trying to create a simple application without Storyboard. I created a `UIButton` extension and I would like to add a simple button to my view (constraints will be set later). Unfortunately the button is not visible. I would appreciate if somebody helps me. Thank you! --- Buttons.swift --- ``` extension UIButton { func createRectangleButton(buttonPositionX: Double, buttonPositionY: Double ,buttonWidth: Double, buttonHeight: Double, buttonTilte: String) { let button = UIButton(type: .system) as UIButton button.frame = CGRect(x: buttonPositionX, y: buttonPositionY, width: buttonWidth, height: buttonHeight) button.setTitle(buttonTilte, for: .normal) button.backgroundColor = COLOR_WHITE button.tintColor = COLOR_BLACK } } ``` --- InitialViewController.swift --- ``` import UIKit class InitialViewController: BaseViewController { override func viewDidLoad() { super.viewDidLoad() // Gradient Layer view.addGradientBackground(colorTop: COLOR_ROYALRED2, colorBottom: COLOR_ROYALRED1) // Button let startButton = UIButton() startButton.createRectangleButton(buttonPositionX: 50, buttonPositionY: 20, buttonWidth: 200, buttonHeight: 50, buttonTilte: "START") self.view.addSubview(startButton) } } ```