Create UIBarButtonItem Programmatically

In this Swift code example we will learn how to:

  • Create UIBarButtonItem programmatically
  • How to set right side bar button item(rightBarButtonItem)
  • How to set left side bar button item(leftBarButtonItem)
  • How to set target action on UIBarButtonItem to call custom function when button is tapped

import UIKit

class ViewController: UIViewController {
    override func viewDidLoad() {
        let rightBarButton = UIBarButtonItem(title: "Done", style: UIBarButtonItemStyle.plain, target: self, action: #selector(ViewController.myRightSideBarButtonItemTapped(_:)))
        self.navigationItem.rightBarButtonItem = rightBarButton
        let leftBarButton = UIBarButtonItem(title: "Edit", style: UIBarButtonItemStyle.done, target: self, action: #selector(ViewController.myLeftSideBarButtonItemTapped(_:)))
        self.navigationItem.leftBarButtonItem = leftBarButton
    func myRightSideBarButtonItemTapped(_ sender:UIBarButtonItem!)
    func myLeftSideBarButtonItemTapped(_ sender:UIBarButtonItem!)
    override func didReceiveMemoryWarning() {

Learn iOS Development with these Video Courses

How to Make a Freaking iPhone App - iOS 10 and Swift 3
icon icon

iOS 10 & Swift 3: From Beginner to Paid Professional

The Complete iOS 10 Developer Course - Build 21 Apps

Swift 3 - Learn to Code with Apple's New Language
icon icon

Learn How to Build Mobile Apps for iOS with Swift, PHP and MySQL
icon icon

Follow me on one of your favourite social networks to learn about new video tutorials and code examples:

Twitter: @SwiftVideoBlog
Google Plus:
Facebook: Swift Developer Blog on Facebook