Je viens de vérifier, c'est le code dans mon application utilisée pour souscrire à l'une des notifications et il fonctionne dans 3.x et 4.0:
[[NSNotificationCenter defaultCenter] addObserver: self
selector: @selector(keyboardWillShow:)
name: UIKeyboardWillShowNotification
object: nil];
Et de l'intérieur NSLog keyboardWillShow:
2010-06-21 08:32:55.750 ClockSmith[3773:307] -[GMTableView keyboardWillShow:] size={320, 216} NSConcreteNotification 0x1de970 {name = UIKeyboardWillShowNotification; userInfo = {
UIKeyboardAnimationCurveUserInfoKey = 0;
UIKeyboardAnimationDurationUserInfoKey = "0.300000011920929";
UIKeyboardBoundsUserInfoKey = "NSRect: {{0, 0}, {320, 216}}";
UIKeyboardCenterBeginUserInfoKey = "NSPoint: {160, 588}";
UIKeyboardCenterEndUserInfoKey = "NSPoint: {160, 372}";
UIKeyboardFrameBeginUserInfoKey = "NSRect: {{0, 480}, {320, 216}}";
UIKeyboardFrameEndUserInfoKey = "NSRect: {{0, 264}, {320, 216}}";
}}
Avez-vous des gestionnaires dans votre UITableView (je les mets dans une sous-classe) ou dans votre UIViewController qui s'abonne à ces notifications? Vérifiez votre code addObserver.
Votre question n'est pas claire. Ajoutez des détails sur les notifications spécifiques qui ne sont pas reçues et peut-être un exemple de code montrant comment vous les configurez. – Alex