web-dev-qa-db-fra.com

TableView recherche dans Swift

J'ai deux tableaux: FirstTableArray (inclure le nom des marques) et SecondTableArray (inclure des modèles).

Je veux ajouter une recherche à travers laquelle le modèle de téléphone peut être trouvé par une partie du nom.

import UIKit
import MessageUI

class FirstTableViewController: UITableViewController {

    var FirstTableArray = [String]()
    var SecondTableArray = [SecondTable]()

override func viewDidLoad() {

    super.viewDidLoad()

    self.navigationController?.navigationBar.isTranslucent = false
    self.navigationController?.navigationBar.barStyle = .black
    self.navigationController?.navigationBar.tintColor = UIColor.white

// First Table Array

    FirstTableArray = ["Apple", "Samsung"]

// Second Table Array

    SecondTableArray = [
    SecondTable(SecondTitle: ["iPhone 5s", "iPhone 6", "iPhone 6s"]),
    SecondTable(SecondTitle: ["Galaxy S4", "Galaxy S5", "Galaxy S6"]), 
    ]   
    }

 override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int
    {
    return FirstTableArray.count
    }

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let Cell = self.tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) as UITableViewCell
    Cell.textLabel?.text = FirstTableArray[(indexPath as NSIndexPath).row]
    return Cell
    }

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    let indexPath : IndexPath = self.tableView.indexPathForSelectedRow!
    let DestViewController = segue.destination as! SecondTableViewController
    let SecondTableArrayTwo = SecondTableArray[(indexPath as NSIndexPath).row]
    DestViewController.SecondTableArray = SecondTableArrayTwo.SecondTitle
    } 
}

Peux-tu m'aider avec ceci?

4
user6023982

Je suggérerais d'implémenter un UISearchBar et d'ajouter votre classe en tant que délégué au UISearchBar, puis dans les méthodes de délégués, vous pouvez prendre le texte de la barre de recherche et effectuer la recherche sur le datasouce, puis recharger les données tableview en conséquence 

Edit: Vous pouvez utiliser ce tutoriel pour savoir comment implémenter UISearchBar sur un UITableView https://www.raywenderlich.com/472-uisearchcontroller-tutorial-getting-started

1
John