0

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

for (id view in [self.searchDisplayController.searchBar subviews]) { 
    if ([view isMemberOfClass:[UISegmentedControl class]]) 
     { 
      UISegmentedControl *scopeBar = view; 
      scopeBar.selectedSegmentIndex = 1; 
     } 
} 

Но кнопка сферы я хочу еще не выбрана. В моей строке поиска нет подчиненного класса UISegmentedControl.

ответ

0

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

UISearchBar имеет особое свойство, которое должно быть установлено:

self.searchDisplayController.searchBar.selectedScopeButtonIndex = 1; 
+0

Спасибо за ответ. То, как это сработало для меня, было с [self.searchDisplayController.searchBar setSelectedScopeButtonIndex: 1]; –

+0

Странно, в обоих случаях означает то же самое в конце. Во всяком случае, рад, что я мог бы помочь :-) –