поиск через UISearchBar, с помощью sqlite - PullRequest
0 голосов
/ 26 июня 2011

Поиск через uisearchbar, с sqlite. Например, слово «home», написанное в uisearchbar, будет отправлено на запрос:

SELECT * FROM table1, ГДЕ СОГЛАСОВАНО содержимое '… ..' // здесь '….' быть отправленным "домой"

-(NSArray *)titles{

NSMutableArray * retval = [[[NSMutableArray alloc] init] autorelease];

NSString * query = @"SELECT * FROM table 1 WHERE content MATCH '…..' ";

sqlite3_stmt * statement;

if (sqlite3_prepare_v2(_database, query.UTF8String, -1, &statement, nil) == SQLITE_OK) {
    while (sqlite3_step(statement) == SQLITE_ROW) {………..}}};

Я хочу знать, возможно ли это, и ссылку с примером. Спасибо.

Ответы [ 2 ]

0 голосов
/ 26 июня 2011

Вы должны убедиться, что ваш контроллер представления реализует протокол UISearchBarDelegate, затем добавьте следующий метод

- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText
{
    [self titles:searchText];
}

Измените свой метод title , чтобы принять строку какпараметр:

-(NSArray *)titles:(NSString *)toMatch
{
NSMutableArray * retval = [[[NSMutableArray alloc] init] autorelease];

NSString * query = [NSString stringWithFormat:@"SELECT * FROM table 1 WHERE content MATCH '%@'", toMatch];

sqlite3_stmt * statement;

if (sqlite3_prepare_v2(_database, query.UTF8String, -1, &statement, nil) == SQLITE_OK) {
    while (sqlite3_step(statement) == SQLITE_ROW) {………..}}};

Убедитесь, что ваш viewcontroller является делегатом для UISearchBar.

0 голосов
/ 26 июня 2011
...