迅速:didSelectRowAtIndexPath [英] swift: didSelectRowAtIndexPath

查看:91
本文介绍了迅速:didSelectRowAtIndexPath的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有tableViewController.我想单击1个单元格并获取print("0"),然后单击2个单元格并获取print("1")

I have tableViewController. I want to click on 1 cell and get print("0") and click on 2 cell and get print("1")

但是我的代码不起作用.为什么?

But my code doesn’t work. Why?

import UIKit

class MasterViewController: UITableViewController {

override func viewDidLoad() {
    super.viewDidLoad()
    tableView.delegate = self
    tableView.dataSource = self
}

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

// MARK: - Table view data source

override func numberOfSections(in tableView: UITableView) -> Int {
    return 1
}

override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return 10 
}

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: String(format: "Cell%d", indexPath.row), for: indexPath)
    return cell
}

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {

    if indexPath.row == 0 {
        print("0")
    }

    else if indexPath.row == 1 {
        print("1")
        self.performSegue(withIdentifier: "detailSegue", sender: self)
    }

}

推荐答案

在Swift 3中,UITableViewController中方法的签名为

In Swift 3 the signature of the method in an UITableViewController is

override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)

这篇关于迅速:didSelectRowAtIndexPath的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆