单击TableViewCell以打开当前用户的配置文件视图

时间:2017-03-31 04:44:12

标签: swift uitableview firebase firebase-realtime-database tableview

我正在使用firebase数据库,并且有一个表视图,显示索引path.row中用户的姓名,年龄,位置和图像。当单元格被单击到用户配置文件时,我将如何显示另一个视图,其中包含用户的更多信息和照片。这是我的tableView的代码。

 override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return userList.count

}

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

    let cell = tableView.dequeueReusableCell(withIdentifier: "prefCell", for: indexPath) as! SFPTableViewCell

      let user = userList[indexPath.row]

    cell.name.text = userList[indexPath.row].name
    cell.location.text = userList[indexPath.row].location


    if let imageURL = user.image {

        cell.imageOne.loadImageUsingCacheWithUrlString(urlString: imageURL)
    }       
          return cell
}

    }

enter image description here

3 个答案:

答案 0 :(得分:0)

刚刚使用UITableViewDelegate方法"didSelectRowAtIndexPath"并使用indexPath将图像发送到其他视图控制器

 override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        let sb = UIStoryboard(name: "Main", bundle: nil)
        let detailVC = sb.instantiateViewController(withIdentifier: "ImageVC") as! DetailViewController
        detailVC.strImage  = self.arrImage[indexPath.row]
        self.navigationController?.pushViewController(detailVC, animated: true)
    }

DetailViewController中取一个变量

var strImage : String = ""

并将此变量赋予UIImagView

 imgView.image = UIImage(named: strImage) 

答案 1 :(得分:0)

使用代码使用didSelectRowAtIndexPath。

使用Storyboard:

第1步:选择tableview单元格。

select cell

步骤2:按住Ctrl并单击鼠标并在目标视图中拖动。

drag into anthor view

第3步:给任何一个segue。

segue

第4步:完成。

enter image description here

答案 2 :(得分:0)

添加以下代码

override  func tableView(_ tableView: UITableView, didSelectRowAtindexPath: IndexPath){

   let detailVC = storyboard.instantiateViewControllerWithIdentifier("MyDetailVC") as MyDetailVC // get the obect of other VC
   detailVC.myImage = <your_image> // assign your image which you wanted to send to other VC.
   self.navigationController?.pushViewController(detailVC,animated: true // Push to other VC
}
MyDetailVC.swift

中的

var myImage : UIImage? // Create variable of image type in required VC where you wanted to send data

现在在MyDetailVC.swift中使用您的图片。

您可以询问任何进一步的查询。