如何在搜索后只加载表格视图?

时间:2017-03-12 04:47:13

标签: ios swift uitableview tableview

我希望创建一个视图控制器,让用户可以搜索设备,然后在点击搜索按钮后,我希望填充下面的表格视图。问题是当视图控制器被加载时,tableview正在加载,并且由于用户尚未搜索任何内容,因此应用程序崩溃,因为表中没有填充任何数据。我希望在用户单击搜索按钮之前不加载tableview。

到目前为止,我有以下内容:

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = self.tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! CustomTableViewCell

        cell.deviceName.text = deviceArray[indexPath.row]

        return cell
    }

如果用户先点击搜索按钮,我怎么才能加载?

2 个答案:

答案 0 :(得分:1)

我认为你应该在func中检查你的数据源

deviceArray

您应该在viewDidLoad中初始化deviceArray = [];

deviceArray

如果您没有搜索,count = 0function getZodiac(e) { e.preventDefault(); e.stopPropagation(); // the rest of your logic } ,以便不再加载单元格

答案 1 :(得分:0)

在界面构建器中,不要将tableView.dataSource链接为self,然后在搜索按钮的操作中,在搜索逻辑后使用此代码

 self.tableView.dataSource = self
 self.tableView.reloadData()

我希望这能帮到你,最好的问候