ios - How to replace a view with another by clicking in a table row in swift -


i have created navigation menu 4 item, want link every item view controller, how can this?

i have used tutorial: how create navigation panel

centerviewcontrollerdelegate:

@objc protocol centerviewcontrollerdelegate {   optional func toggleleftpanel()   optional func collapsesidepanels() }  class centerviewcontroller: uiviewcontroller {    @iboutlet weak private var imageview: uiimageview!   @iboutlet weak private var titlelabel: uilabel!   @iboutlet weak private var creatorlabel: uilabel!    var delegate: centerviewcontrollerdelegate?    // mark: button actions    @ibaction func kittiestapped(sender: anyobject) {     delegate?.toggleleftpanel?()   }    }  extension centerviewcontroller: sidepanelviewcontrollerdelegate {   func itemmenuselected(itemmenu: menu) {     imageview.image = itemmenu.image     titlelabel.text = itemmenu.title     creatorlabel.text = itemmenu.creator      delegate?.collapsesidepanels?()   } } 

sidepanelviewcontrollerdelegate:

@objc protocol sidepanelviewcontrollerdelegate {   func itemmenuselected(itemmenu: menu) }  class sidepanelviewcontroller: uiviewcontroller {    @iboutlet weak var tableview: uitableview!   var delegate: sidepanelviewcontrollerdelegate?    var itemmenus: array<menu>!    struct tableview {     struct cellidentifiers {       static let menucell = "menucell"     }   }     func uicolorfromrgb(rgbvalue: uint) -> uicolor {         return uicolor(             red: cgfloat((rgbvalue & 0xff0000) >> 16) / 255.0,             green: cgfloat((rgbvalue & 0x00ff00) >> 8) / 255.0,             blue: cgfloat(rgbvalue & 0x0000ff) / 255.0,             alpha: cgfloat(1.0)         )     }   override func viewdidload() {     super.viewdidload()     var tblview =  uiview(frame: cgrectzero)     tableview.tablefooterview = tblview     tableview.tablefooterview!.hidden = true     tableview.backgroundcolor = uicolorfromrgb(0xe2f2c9)     tableview.reloaddata()   }  }  // mark: table view data source   extension sidepanelviewcontroller: uitableviewdatasource {    func numberofsectionsintableview(tableview: uitableview) -> int {     return 1   }    func tableview(tableview: uitableview, numberofrowsinsection section: int) -> int {     return itemmenus.count   }    func tableview(tableview: uitableview, cellforrowatindexpath indexpath: nsindexpath) -> uitableviewcell {     let cell = tableview.dequeuereusablecellwithidentifier(tableview.cellidentifiers.menucell, forindexpath: indexpath) as! menucell     cell.configureformenu(itemmenus[indexpath.row])     return cell   }  }  // mark: table view delegate  extension sidepanelviewcontroller: uitableviewdelegate {    func tableview(tableview: uitableview, didselectrowatindexpath indexpath: nsindexpath) {     let selectedmenu = itemmenus[indexpath.row]     delegate?.itemmenuselected(selectedmenu)   }  }  class menucell: uitableviewcell {    @iboutlet weak var itemmenuimageview: uiimageview!   @iboutlet weak var imagenamelabel: uilabel!   @iboutlet weak var imagecreatorlabel: uilabel!    func configureformenu(itemmenu: menu) {     itemmenuimageview.image = itemmenu.image     imagenamelabel.text = itemmenu.title     imagecreatorlabel.text = itemmenu.creator   }  } 


Comments