2016-12-19 34 views
0

我有一个带有搜索结果的tableView。我将第一个和第二个观点与细胞中的“故事板Segue”连接到第二个视图。点击UITableView的单元格,其他视图不会出现

这是写在第一个的ViewController代码:

override func prepare(for segue: UIStoryboardSegue, sender: Any?) { 

    let indexPath = self.tableProva.indexPathForSelectedRow?.row 

    let vc = segue.destination as! DettaglioNewViewController 

    vc.titleLibro = posts[indexPath!].name 
    vc.authorLibro = posts[indexPath!].author 
    vc.ISBNLibro = posts[indexPath!].ISBN 

} 

在其他项目中它完美的作品,但在这个项目中这是行不通的,显示第二的viewController我要轻触和滑动,以右边或左边。

看来问题是图形。 如果我尝试点击单元格不会变灰。如果我长时间按住它,就变成灰色

这发生在其他人身上吗?

任何人都可以帮助我吗?

+0

在控制器中是否有tapGesture或其他事件? – Snoobie

+0

是的,就像@Snoobie,我认为其他一些经理人正在抓住它。 –

+0

@Snoobie我在哪里可以看到它? – DanieleLanari

回答

0

您应该使用'didSelectRowAtIndexPath'方法来为特定单元格扩展到不同的视图。使用.....

var storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: NSBundle(forClass: self.dynamicType)) 

vc = storyboard.instantiateViewControllerWithIdentifier("LoginVC") as DettaglioNewViewController 
vc.loadView() 

.....为了找到需要的信息。

*信息示例*

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) 
{ 
    myFavIndex = indexPath.row 
    let storyBoard = UIStoryboard(name: "Main", bundle:nil) 
    let view = storyBoard.instantiateViewControllerWithIdentifier("LoginVC") as! DettaglioNewViewController 
    view.imageURL = self.imageArray[mySelectedIndex] 
    view.titleString = self.titleArray[mySelectedIndex] 
    self.presentViewController(view, animated: true, completion: nil) 
} 

在我使用的新视图控制器和图像标题作为view.imageURLview.titleString来填充从我的选择小区的信息经由该[mySelectedIndex]视图元件上面的例子。您应该可以使用Int,UIImage,String(例如,

+0

如何将数据从单元格传输到第二个视图? – DanieleLanari

+0

@DanieleLanari请看我添加到问题中的详细示例。 –

+0

看来问题是图形。如果我尝试点击单元格不会变灰。如果我长时间坚持,它会变成灰色 – DanieleLanari

0

您不需要从代码初始化您的控制器。只需创建一个自定义的segue并在表代理的'didSelect'方法中调用'performSegue'方法。

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath){ 
     self.performSegueWithIdentifier("yourIdentifierInStoryboardForCustomSegue", sender: nil) 
} 
相关问题