2015-08-03 1 views
0

Я очень новичок в разработке iOS и создании саморазрушающегося приложения iOS с treehouse, мы используем parse.com в качестве бэкэнд.панель поиска не реагирует iOS

Я добавил строку поиска в приложении: -

- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar { 

    //dismiss keyboard and reload table 
    [self.searchBar resignFirstResponder]; 
    [self.tableView reloadData]; 
} 

- (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar { 

    //Enable the cancel button when the user touches the search field 
    self.searchBar.showsCancelButton = TRUE; 
} 

- (void)searchBarTextDidEndEditing:(UISearchBar *)searchBar { 

    //disable the cancel button when the user ends editing 
    self.searchBar.showsCancelButton = FALSE; 
} 

- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar { 

    //dismiss keyboard 
    [self.searchBar resignFirstResponder]; 

    //reset the foundUser property 
    self.foundUser = nil; 

    //Strip the whitespace off the end of the search text 
    NSString *searchText = [self.searchBar.text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]; 


    //Check to make sure the field isnt empty and Query parse for username in the text field 
    if (![searchText isEqualToString:@""]) { 

     PFQuery *query = [PFUser query]; 
     [query whereKey:@"username" equalTo:searchText]; 
     [query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) { 
      if (!error) { 

       //check to make sure the query actually found a user 
       if (objects.count > 0) { 

        //set your foundUser property to the user that was found by the query (we use last object since its an array) 
        self.foundUser = objects.lastObject; 

        //The query was succesful but returned no results. A user was not found, display error message 
       } else { 

       } 

       //reload the tableView after the user searches 
       [self.tableView reloadData]; 

      } else { 

       //error occurred with query 

      } 

     }]; 

    } 
} 

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

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

+0

Проверьте эту ссылку. http://stackoverflow.com/questions/31339298/how-to-search-array-of-dictionary-and-show-in-uitableview. Надеюсь, эта ссылка полезна. –

+0

несколько. спасибо, но я не уверен, как интегрировать его, чтобы получить пользователей от parse.com – smithyy

ответ

1

Вы должны сохранить все строчные значения для имени пользователя в качестве ключа для вашего класса PFUser или любого другого класса, который вы пытаетесь запросить по имени пользователя. Когда поисковый запрос добавлен в PFQuery, убедитесь, что он также имеет нижний регистр.

Вы можете преобразовать любую строку, чтобы стать строчной строка, как это:

NSString* string = @"AAA"; 
NSString* lowerCaseString = string.lowercaseString; 

Так, при создании пользователя вы могли бы сделать что-то вроде этого:

PFUser* user = [PFUser user]; 
user.username = self.usernameTextField.lowercaseString 
... 

И тогда, когда вы хотите чтобы спросить этого пользователя, ваш запрос будет выглядеть так:

+0

ok, но в строке поиска, когда вы вводите первую букву, она автоматически занимает верхний регистр, пока вы не отмените выбор кнопки смены на клавиатуре, разве я не могу что-то сделать добавьте так, чтобы я мог ввести имя пользователя в верхнем или нижнем регистре для пользователя. – smithyy

+0

проверить мое редактирование, чтобы увидеть, как преобразовать строку, чтобы стать строчной строкой. –

+0

Попробуем, но мы не можем искать в верхнем/нижнем регистре поэтому он может показывать пользователям – smithyy

 Смежные вопросы

  • Нет связанных вопросов^_^