Я разрабатываю пользовательскую многоязычную клавиатуру для iphone и ipad, и я застрял в пользовательском интерфейсе, что я не могу сохранить правильный пользовательский интерфейс в случае изменения ориентации устройства.конфликт автосогласования с ограничением высоты в пользовательской клавиатуре
Моя конечная цель - добиться большей высоты клавиатуры (по умолчанию высота клавиатуры ios с предложениями) в режиме пейзажа + портрет + в устройствах iPhone + iPad.
Но как только я получаю автоматическое изменение размера (не авто макет), я не могу добавить ограничения на высоту клавиатуры (автоматическая раскладка отключена в файле Xib).
Если я добавлю ограничения, включив автомасштабирование, я потеряю авторезистентность подзонов, чтобы они отрегулировали себя в соответствии с экраном устройства.
Моя основная проблема заключается в том, что я не знаю, куда идти, чтобы я мог сосредоточиться только там.
следующий код, который я использую для добавления ограничений программно.
- (void)updateViewConstraints {
[super updateViewConstraints];
CGFloat _expandedHeight = 273;
NSLayoutConstraint *_heightConstraint =
[NSLayoutConstraint constraintWithItem: self.view
attribute: NSLayoutAttributeHeight
relatedBy: NSLayoutRelationEqual
toItem: nil
attribute: NSLayoutAttributeWidth
multiplier: 0.0
constant: _expandedHeight];
[self.view addConstraint: _heightConstraint];
}
-(void)viewDidAppear:(BOOL)animated {
self.inputView = (UIInputView *)Keyboard;
[self updateViewConstraints];
}
-(void)viewWillAppear:(BOOL)animated{
NSLog(@"viewWillAppear");
}
-(void)viewWillLayoutSubviews{
NSLog(@"viewWillLayoutSubviews");
[self updateViewConstraints];
}
Любое предложение было бы здорово! Спасибо заранее.
'updateViewConstraints' добавит новое ограничение каждый раз при вызове. Вам также нужно рассмотреть возможность удаления. Это всего лишь предположение, что у меня нет полноценной области вашей проблемы. – Zahid