2015-11-06 1 views
0

я добавить цель в моих кнопкахКак звонить контроллер с параметрами просмотра при нажатии кнопки щелкнула в табличной ячейке

cell.foo.tag = indexPath.row 
cell.foo.addTarget(self, action: "bar:", forControlEvents:UIControlEvents.TouchUpInside) 

Но я не знаю, как назвать контроллер с параметрами просмотра

func bar(sender: UIButton!) { 
    // ? 
} 
+0

Что и хотят именно? – iAnurag

+0

нравится [это] (http://stackoverflow.com/questions/28695969/how-to-call-show-another-view-controller-when-clicked-on-the-cell-of-table-vie) –

+0

u хотите перейти к другому контроллеру представления, поскольку pertcular cel получает clickedl? – iAnurag

ответ

1

Вы должны вручную с помощью отправителе тега

func bar(sender: UIButton!) { 

    if sender.tag == 0 { 

     self.performSegueWithIdentifier("viewcontroller1", sender: tableView) 
    } 
    else if sender.tag == 1 { 

     self.performSegueWithIdentifier("viewController2", sender: tableView) 
    } 
    //...... and so on 
} 

и реализовать следующий метод

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) { 

    if segue.identifier == "viewController1" { 

     let indexPath:NSIndexPath = self.tableView.indexPathForSelectedRow()! 
     let detailVC = segue.destinationViewController as ViewController1 
     detailVC.item = items[indexPath.row] as Item // Pass your data 
    } 
    else if segue.identifier == "viewController2" { 


    } 
    //...... and so on 
} 

Или, если вы хотите, чтобы перемещаться вручную кнопкой события затем

func bar(sender: UIButton!) { 

    if sender.tag == 0 { 

     let indexPath:NSIndexPath = self.tableView.indexPathForSelectedRow()! 
     let detailVC = self.storyboard?.instantiateViewControllerWithIdentifier("view1SegueIdentifier") as! ViewController1 // view1SegueIdentifier -> assign it from storyboard 
     detailVC.item = items[indexPath.row] as Item // Pass your data 
     self.navigationController!.pushViewController(detailVC, animated:true) 
    } 
    else if sender.tag == 1 { 


    } 
    //...... and so on 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^