2016-06-20 1 views
0

J'ai créé une vue de table qui remplit ses données à partir d'un tableau de texte (chaîne) et d'un tableau d'images (PFFile). J'ai également mis en place une barre de recherche qui affiche les résultats filtrés en fonction du tableau de texte créé.La barre de recherche n'affiche pas l'image correcte Swift Xcode 7

var fruitArray = [String]() 
var imageFile = [PFFile]() 

le problème est que fruitArray [indexPath.row] est filtrée en fonction de l'entrée dans la barre de recherche, mais la barre de recherche ne peut pas filtrer quoi que ce soit de imageFile et imageFile [indexPath.row] est affiché comme si rien ne été recherché. Par conséquent, les images ne changeront pas à l'intérieur de la cellule. Par conséquent, les images ne changeront pas à l'intérieur de la cellule. en d'autres termes, avant de chercher quoi que ce soit, si la première cellule affiche un texte et une image d'une pomme, après la recherche, la première cellule affiche toujours une pomme mais le texte et le nombre de cellules changent. Toutes les solutions seraient appréciées. Merci d'avance

Répondre

0

Je vous suggère de créer un tableau de type [fruit], où le fruit est juste une structure avec une image et une chaîne. Ensuite, vous pouvez filtrer les mauvaises pommes.

Voici le code de la struct:

struct Fruit { 
    let name: String 
    let image: PFFile 
} 

Ensuite, dans votre fonction searchResultsUpdating simplement filtrer votre terme de recherche en utilisant un filtre simple:

results = fruitArray.filter{$0.name.containsString(searchController.searchBar.text!)}