不推荐的错误

时间:2011-05-23 05:50:21

标签: objective-c cocoa-touch

  

可能重复:
  UIKeyboardBoundsUserInfoKey is deprecated, what to use instead?

我有以下代码,我希望删除这个问题:

NSDictionary* info = [notif userInfo];
NSValue* aValue = [info objectForKey:UIKeyboardBoundsUserInfoKey];  
CGSize keyboardSize = [aValue CGRectValue].size;

在代码的第二行,我收到消息“UIKeyboardBoundsUserInfoKey已弃用”。 我已经在论坛上阅读了类似的错误消息并尝试了一些事情,但我的新想法无法修复它。

3 个答案:

答案 0 :(得分:1)

您应该在任何标记为已弃用的内容时签出文档。您通常会找到有关替换已弃用项目的信息。在这种情况下,UIWindow引用的键盘通知用户信息键部分:

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIWindow_Class/UIWindowClassReference/UIWindowClassReference.html

使用UIKeyboardFrameBeginUserInfoKey和UIKeyboardFrameEndUserInfoKey代替UIKeyboardBoundsUserInfoKey

答案 1 :(得分:0)

您可以使用UIKeyboardFrameEndUserInfoKey代替UIKeyboardBoundsUserInfoKey

答案 2 :(得分:0)

这意味着不要使用UIKeyBoardframeendUserInfoKey。因为它在新的iOS xcode中不再存在...所以尝试使用以后或不同的键...请看本教程 http://www.w3bookmarks.com/mobile-application-development-tutorial/iphone-questions-uikeyboardboundsuserinfokey-is-deprecated-what-to-use-instead/