У меня есть представление, которое имеет tableview сверху и текстовое поле поиска (с кнопкой) внизу таблицы. Я пытаюсь реализовать динамический поиск, так что когда и когда пользователь вводит таблицу, перезагрузка. Поисковое поле прекрасно сочетается с клавиатурой и выполняет поиск. Но в некоторых случаях он идет ниже клавиатуры, пока пользователь все еще печатает. Обычно это происходит, когда поиск возвращает 0 результатов, что означает, что tableview пуст, или если tableview имеет строки, которые просто соответствуют высоте, выделенной для tableview. Я не уверен, почему перезагрузка tableview заставляет поле поиска вернуться к нижней части страницы, даже если поле поиска не является частью таблицы.Проблема с текстовым полем поиска и табличным представлением
Вот код, я использую, чтобы переместить поле поиска на основе состояния клавиатуры:
- (void)adjustView:(NSNotification *)notification {
CGRect keyboardFrame = [[[notification userInfo] objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue];
keyboardFrame = [self.view convertRect:keyboardFrame fromView:self.view.window];
CGRect viewFrame = self.searchView.frame;
viewFrame.origin.y = keyboardFrame.origin.y - viewFrame.size.height;
self.searchView.frame = viewFrame;
}
Здесь SearchView это вид, содержащий текстовое поле и кнопку. Любая помощь очень ценится.
Является ли текстовое поле фактически частью таблицы? Как в одной из его ячеек? –
нет нет. Основной вид имеет табличное представление и представление, в котором есть 2 виджета - текстовое окно и кнопка. – user1259574
Не могли бы вы опубликовать код, который вы используете для перемещения UITextField вверх и вниз? –