xcode , indexPath, SearchBar



我的导航控制器和带有indexPath的搜索栏有问题。我有一个表格视图,其中有一个项目列表。项目是 1。图像和 1.每行的图像描述(标签)。

现在我尝试为列表粘贴搜索栏。它工作得很好,但是当我搜索例如列表的第二项(AssaultGren.)时,表格向我显示了错误的(第一个)图像。这是因为当我搜索时,第二项是搜索视图中的第一项.....现在我不知道如何解决它。也许有人可以帮助我?谢谢大家

https://i.stack.imgur.com/rPHuy.jpg "正常视图"

https://i.stack.imgur.com/O5Gqe.jpg "搜索视图"

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

    if searching{
        cell?.UnitName?.text = searchUnits[indexPath.row]
    } else {
        cell?.UnitName.text = units[indexPath.row]
        cell?.UnitBild.image = UIImage(named : units[indexPath.row])
    }
    return cell!
}

}

我想你忘记设置正确的图像,以防你正在搜索。由于表视图单元格被iOS重用,因此它保留了之前设置的图像,因此您必须再次设置它。试试这个:

if searching{
        cell?.UnitName?.text = searchUnits[indexPath.row]
        cell?.UnitBild.image = UIImage(named : searchUnits[indexPath.row])
    } else {
        cell?.UnitName.text = units[indexPath.row]
        cell?.UnitBild.image = UIImage(named : units[indexPath.row])
    }

相关内容

  • 没有找到相关文章