2017-08-24 70 views
0

我无法触发某个操作,因为我单击了表格单元格。按下单元格后,按下单元格的背景仅为灰色。但是这个行为没有执行。请帮忙。Uable在swift中触发按下表格单元的操作

import UIKit 

class ViewController: UIViewController, UITableViewDataSource , UITableViewDelegate 
{ 
    override func viewDidLoad() { 
     super.viewDidLoad() 
    } 

    override func didReceiveMemoryWarning() { 
     super.didReceiveMemoryWarning() 
    } 

    var loki_images:[UIImage] = [UIImage(named: "images.png")!, 
           UIImage(named: "images (1).png")!, 
           UIImage(named: "images (2).png")!] 

    var persons = [ "Lokesh Ahuja" , "Raghav Mittal" , "Tul-Tul" ] 

    var identities = ["A","B","C"] 

    func numberOfSectionsInTableView(tableView: UITableView) -> Int 
    { 
     return 1 
    } 

    func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int 
    { 
     return persons.count 
    } 

    func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell 
    { 
     let cell = tableView.dequeueReusableCellWithIdentifier("Cell") 

     let Name = persons[indexPath.item] 

     cell!.textLabel!.text = Name 

     let image = loki_images[indexPath.row] 

     cell!.imageView?.image = image 

     return cell! 
    } 

    func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) 
    { 
     let id = identities[indexPath.item] 
     let viewController = storyboard?.instantiateViewControllerWithIdentifier(id) 
     self.navigationController?.pushViewController(viewController!, animated: true) 
    } 
} 
+0

你有没有为您的tableView设置委托('tableView.delegate = self')? –

+0

你可以提供你的故事板的截图。 –

回答

2

是你的UIViewController是导航控制器

,如果没有,那么你应该

self.present(viewController, animated: true, completion: nil) 
0

更换

self.navigationController?.pushViewController(viewController!, animated: true) 

有你proparly连接表的的UITableViewDelegate与视图控制器在故事板。核实。如果你不连接它比selectselect不会被调用。

enter image description here

相关问题