我正在尝试在我的UIView控制器中有两个自定义单元格和搜索栏。起初我能够做一个单元格和搜索栏,它很完美,然后我添加了另一个单元格,然后一切都变得难看。
这是我的自定义单元格的想法
我通过JSON从我的服务器获取数据。许多商店,其中一些有设计,有些没有设计。如果商店有设计,我将设计作为字符串withDesign
let shop_id = subJson["id"].stringValue
var info = Shops(shopname: shopName, Logo: logoString, family_id: familiy_id , design : designImage )
self.withDesign = self.shops.filter { $0.design != "" }
self.withOut = self.shops.filter { $0.design == "" }
self.allShops = self.NofilteredArr + self.filteredArr
print(self.filteredArr)
第一个单元格称为design
,第二个单元格称为Cell
我正在尝试做的是所有商店都将在Cell中列出,如果有一个设计有商店的商店,那么如果没有设计就可以制作设计单元,那么只需列出商店。两个单独的海关单元
我正在尝试做什么
任何帮助将不胜感激!
答案 0 :(得分:1)
请使用此类代码
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
if searchActive
{
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) as! ShopTableViewCell
let entry1 = auxiliar?[indexPath.row]
cell.shopImage.hnk_setImage(from: URL(string: (entry1?.Logo)!))
cell.shopName.text = entry1?.shopname
return cell
}else{
if withDesign != nil
{
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) as! ShopTableViewCell
let entry = withDesign[indexPath.row]
cell.shopImage.hnk_setImage(from: URL(string: entry.Logo))
cell.shopName.text = entry.shopname
return cell
} else {
let cell = tableView.dequeueReusableCell(withIdentifier: "design", for: indexPath) as! DesignTableViewCell
let entry = withDesign[indexPath.row]
cell.deignImage.hnk_setImage(from: URL(string: entry.design))
return cell
}
}