Я очень младший мобильный программист. Мне нужно переместить текстовые представления при появлении клавиатуры. Я следую этому move-uiview-up-when-the-keyboard-appears-in-ios, и он работает хорошо, но у меня есть фоновое изображение, и я не хочу для перемещения фонового изображения. Все текстовые поля встраиваются в UIView с именем as customView. Я пытался перемещаться по customView вместо self.view. Когда я начинаю вводить в первом текстовом виде, пользовательский интерфейс перемещается вверх. Но когда я перехожу во второе текстовое представление, customview перемещается в исходное положение, а textView становится под клавиатурой. Для того, чтобы начинать вводить во втором текстовом представлении, нужно постоянно перемещаться вверх. Я действительно ценю любую помощь !.Передвиньте текстовое поле, когда клавиатура появляется в Objective C
@property (strong, nonatomic) IBOutlet UIView *customView;
-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardDidShow:) name:UIKeyboardDidShowNotification object:nil];
return YES; }
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField {
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardDidHide:) name:UIKeyboardDidHideNotification object:nil];
[self.view endEditing:YES];
return YES; }
- (void)keyboardDidShow:(NSNotification *)notification
{
//Assign new frame to your view
[self.customView setFrame:CGRectMake(0,50,320,460)];
}
-(void)keyboardDidHide:(NSNotification *)notification
{
[self.customView setFrame:CGRectMake(0,193,320,460)];
}
Он отлично работает в ios7, но он не работает в ios8.I не уверен, почему. Не могли бы вы мне помочь? – sasha
Он отлично работает в iOS 8.1, не уверен в 8.0, пожалуйста, проверьте 8.1. –
Спасибо. Я нашел решение для ios8 в http://stackoverflow.com/questions/26112319/ios8-whats-going-on-with-moving-views-during-keyboard-transitions. – sasha