2012-01-14 5 views
0

Можно ли отключить ориентацию, вращающуюся во время редактирования текстового поля? Например, можно повернуть приложение между портретом и ландшафтом, но если вы нажмете текстовое поле на портрете, вы не сможете повернуть его до пейзажа, пока не закончите редактирование? или наоборот, если ваш пейзаж?Отключить вращение во время редактирования текстового поля?

Я думаю, если есть способ сделать это, я бы ее реализации в textFieldDidBeginEditing и textFieldDidEndEditing

любая помощь будет признателен, спасибо

+0

Это хороший пользовательский интерфейс? Выглядит довольно неинтуитивно для меня и, скорее всего, добавит проблемы в ваш журнал поддержки. –

ответ

1

Установите ваш TextField делегат быть просмотрите контроллер. Когда текстовое поле позволяет вам знать, что он будет редактировать (я считаю, что это что-то вроде - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField), установите iVar в текущую ориентацию (_orientation = self.interfaceOrientation) и установите BOOL iVar (я бы назвал его _editing) равным YES. В методе - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation верните НЕТ, если это не ориентация iVar и _editing - ДА.

+1

Или, чтобы сделать его более простым без делегата: 'return! [Textfield isFirstResponder];' (внутри метода 'shouldAutorotateToInterfaceOrientation:') – JustSid

+0

Huh .... хорошая идея .... –

+0

хм, я относительно новый для Xcode, поэтому я не совсем точно знаю, как это реализовать, поэтому сейчас я сделаю немного больше исследований, когда вы, ребята, указали мне в правильном направлении, спасибо – iGamers

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