Имам UITextView, покриващ цялата настройка на контролера за изглед в сценария. Има ограничения за ръководството за горно оформление, ръководство за долно оформление, водещ марж и заден марж.
Регистрирал съм се за известия от клавиатурата, за да коригирам вмъкванията на съдържание по този начин:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardAppeared:)
name:UIKeyboardDidShowNotification
object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardDisappeared:)
name:UIKeyboardDidHideNotification
object:nil];
изпълнение на keyboardAppeared:
- (void)keyboardAppeared:(NSNotification *)notification {
NSDictionary *notificationUserInfo = [notification userInfo];
CGRect keyboardRect = [[notificationUserInfo objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue];
self.textView.contentInsets = UIEdgeInsetsMake(0, 0, keyboardRect.heignt, 0);
self.textView.scrollIndicatorInsets = UIEdgeInsetsMake(0, 0, keyboardRect.height, 0);
}
изпълнение на keyboardDisappeared:
- (void)keyboardDisappeared:(NSNotification *) {
self.textView.contentInsets = UIEdgeInsetsZero;
self.textView.scrollIndicatorInsets = UIEdgeInsetsZero;
}
Проблемът тук е, че когато се появи клавиатурата, има нежелано превъртане в textView, ако текстът на textView е по-малък. Нежеланото превъртане не се появява, когато размерът на текста надвишава височината на textView.
Моля помогнете!