Create UIButton Programmatically

In this Swift code example, you will learn how to create a UIButton in Swift programmatically. This is a very short code example but contains a lot of useful details like:

  • Create UIButton programmatically in Swift,
  • Position UIButton on a view,
  • Add an action to UIButton, so that when it is tapped your function is called,
  • Set UIButton Title for specific UIControlState,
  • Change UIButton background color,
  • Change UIButton foreground text color.

If you are interested in video lessons on how to write Unit tests and UI tests to test your Swift mobile app, check out this page: Unit Testing Swift Mobile App

import UIKit
class ViewController: UIViewController {
    override func viewDidLoad() {
        // Do any additional setup after loading the view, typically from a nib.
        let button = UIButton(type: UIButton.ButtonType.system) as UIButton
        let xPostion:CGFloat = 50
        let yPostion:CGFloat = 100
        let buttonWidth:CGFloat = 150
        let buttonHeight:CGFloat = 45
        button.frame = CGRect(x:xPostion, y:yPostion, width:buttonWidth, height:buttonHeight)
        button.backgroundColor = UIColor.lightGray
        button.setTitle("Tap me", for: UIControl.State.normal)
        button.tintColor =
        button.addTarget(self, action: #selector(self.buttonAction), for: .touchUpInside)
    @objc func buttonAction(_ sender:UIButton!)
        print("Button tapped")
    override func didReceiveMemoryWarning() {
        // Dispose of any resources that can be recreated.

For more Swift code examples and tutorials, please check the Swift Code Examples page on this website.

Leave a Reply

Your email address will not be published.