获取数据选择tableview变量swift

时间:2018-12-27 13:05:22

标签: swift firebase

如何检索在表视图中选择的数据的ID号?我想绘制我在应用程序的表格视图中选择的数据的ID号,因为它显示在照片中。 2>标题> ID排名以这种方式。当我单击名称时,我想获取ID号。例如,当我按bb时,我想绘制此数据的ID号。enter image description here

2 个答案:

答案 0 :(得分:1)

首先,您的Firebase结构可能应该简化并please don't use arrays。最佳做法是使用.childByAutoId创建密钥。

titles
   child_by_auto_id_0
      title: "bb"
   child_by_auto_id_1
      title: "cc"

然后,当您读取Firebase节点时,填充一个类,然后将这些类对象存储在类数组中

class ViewController: UIViewController {
   var myTitleArray: [TitleClass]()

   class TitleClass {
      var id = ""
      var title = ""
   }

   func readFirebaseData() {
       //read firebase, iterate over results and populate array

       let title = TitleClass()
       title.id = snapshot.key //this will be the childByAutoId for each node
       title.title = //get the title from the snapshot
       self.myTitleArray.append(title)

       //when done iterating and populating the array, tableView .reloadData()
    }

并在tableView委托方法中,将self.myTitleArray用作数据源

答案 1 :(得分:0)

可能您有一个数组或类似的东西来填充tableview,然后您必须实现de proxy func,该函数负责在用户单击行时发出警报。 我是从另一篇文章中摘录的,但是您基本上是

class ViewController : UITableViewController {

    func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
        let selectedItem = items.objectAtIndex(indexPath.row) as YourObject
        selectedItem.id
    }
}