Verwenden Sie UISeachBar mit SQLite3
-
19-09-2019 - |
Frage
Ich bin ziemlich neu für iphone Entwicklung.
Wie auch immer ich habe jetzt 1,5 Stunden suche eine Möglichkeit / tutorial oder was auch immer zu finden, einen UISearchBar hinzuzufügen (es ist bereits zu dem RootViewController.XIB hinzugefügt). Es gibt eine Menge von Tutos beschreibt, wie ein Array an eine UISearchBar zu verbinden. Was würde Ich mag meine arbeitet bereits SQLite-Datenbank auf dem UISearchBar tun, verbinden, so dass ich in der Lage bin eine Volltextsuche zu tun.
Wie .. sagen wir, ich habe 100 Einträge in meinem UITableView aus der SQLite-Datenbank und wenn ich eine „abc“ Zeichenfolge eingeben dann nur die entsprechenden Einträge abc einschließlich sollte gezeigt werden.
Irgendwelche Ideen?
Vielen Dank im Voraus!
Lösung
Ihre UISearchBarDelegate Klasse könnte eine Verbindung zur Datenbank herzustellen und eine Abfrage irgendwo entlang der Linien laufen:
NSString *sql = @"SELECT author FROM books WHERE title like ?||'%'";
sqlite3_stmt *stmt;
if (sqlite3_prepare_v2(database,
[sql cStringUsingEncoding:NSUTF8StringEncoding],
-1, &stmt, NULL) == SQLITE_OK) {
NSString *title = @"programming";
sqlite3_bind_text(stmt, 1, [title UTF8String], -1, SQLITE_TRANSIENT);
while (sqlite3_step(stmt) == SQLITE_ROW) {
NSString *author = sqlite3_column_string(stmt, 0);
NSLog(@"Add to presented authors: %@", author);
}
}
Sie müssen eine Verbindung zur Datenbank herzustellen, bevor es abfragt.
Es gibt ein schönes Tutorial hier