J'ai essayé @TaketoSano réponse, mais ne semble pas fonctionne ... Mon cas est que je n'ai pas une scrollview, juste un point de vue avec plusieurs champs de texte.
Et enfin, j'ai obtenu une solution de contournement. Il s'agit de deux de notification par défaut les noms de clavier que j'ai besoin de:
-
UIKeyboardDidShowNotification
lorsque le clavier n'spectacle;
-
UIKeyboardWillHideNotification
lorsque le clavier s'en cacher.
Voici l'exemple de code que j'ai utilisé:
- (void)viewDidLoad {
[super viewDidLoad];
...
NSNotificationCenter * notificationCetner = [NSNotificationCenter defaultCenter];
[notificationCetner addObserver:self
selector:@selector(_keyboardWasShown:)
name:UIKeyboardDidShowNotification
object:nil];
[notificationCetner addObserver:self
selector:@selector(_keyboardWillHide:)
name:UIKeyboardWillHideNotification
object:nil];
}
- (void)_keyboardWasShown:(NSNotification *)note {
[self.view setFrame:(CGRect){{272.f, 55.f}, {480.f, 315.f}}];
}
- (void)_keyboardWillHide:(NSNotification *)note {
[self.view setFrame:(CGRect){{272.f, 226.5f}, {480.f, 315.f}}];
}
Ici, l' (CGRect){{272.f, 226.5f}, {480.f, 315.f}}
est la vue par défaut de l'image lorsque le clavier est caché. Et (CGRect){{272.f, 55.f}, {480.f, 315.f}}
est la vue de l'image lorsque le clavier n'spectacle.
Et b.t.w., le point de vue de l'image modification sera appliquée animation automatiquement, c'est vraiment parfait!