2010-12-06 1 views
0

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

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

[self.rootController.changeClientViewController.searchDisplayController.searchBar becomeFirstResponder]; 
[self.rootController.changeClientViewController.searchDisplayController setActive:YES]; 

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

+0

Является ли это в `viewWillAppear:` `viewDidAppear:` или что-то другое? – bosmacs 2010-12-06 22:34:01

+0

Он находится в отдельном контроллере (таким образом, длинный путь к поисковому бару) ... Мы попробовали его в `viewDidLoad`,` viewDidAppear: `и` viewWillAppear: `сначала, но он не поднимал клавиатуру в все тогда. (Хотя в контроллере, где он работает нормально, он находится в `viewWillAppear:`) Единственное отличие, которое я вижу, это то, что тот, который работает, является полноэкранным модальным видом; в то время как это просто подзаголовок. – GendoIkari 2010-12-06 22:39:22

ответ

2

Вот один из способов это исправить: becomeFirstResponder после мизерной задержки, т.е.

[self.rootController.changeClientViewController.searchDisplayController.searchBar 
    performSelector:@selector(becomeFirstResponder) withObject:nil afterDelay:0.0]; 

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

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