2012-12-25 63 views
2

我在主視圖控制器中將以下代碼添加到viewWillAppear:animated無法在iPad mini上收到「UIKeyboardWillShowNotification」

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(showKeyboard:) name:UIKeyboardWillShowNotification object:nil]; 

而且,我在同一類中實現該方法,

- (void)showKeyboard:(NSNotification *)notification 
{ 
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:nil message:@"Keyboard will appear." delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; 
    [alert show]; 
} 

主視圖控制器具有UITextField對象。

在iPad2(iOS 5.0)中,聚焦時出現警報視圖。 但是,在iPad mini(iOS 6.0)中,除軟件鍵盤外不會顯示任何內容。

我想讓iPad mini的行爲與iPad2相同。

感謝,

+0

是「viewWillAppeaer:animated」你如何在代碼中拼寫它? – Bejmax

+0

哦,這只是一個拼寫錯誤。謝謝。 – user1562079

回答

2

隨着iOS 3.2,UIKeyboardWillHideNotificationUIKeyboardWillShowNotification不再發射兩個文本字段之間切換時。基本上,只有在鍵盤實際顯示或隱藏時纔會觸發通知。改爲使用UIKeyboardDidShowNotification

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 3.2) { 
     [[NSNotificationCenter defaultCenter] addObserver:self 
               selector:@selector(keyboardDidShow:) 
                name:UIKeyboardDidShowNotification 
                object:nil];  
    } else { 
     [[NSNotificationCenter defaultCenter] addObserver:self 
               selector:@selector(keyboardWillShow:) 
                name:UIKeyboardWillShowNotification 
                object:nil]; 
+0

我試着用'UIKeyboardDidShowNotification'代替那個。 不幸的是,這種改變對iPad mini沒有影響... 謝謝你的回答。 – user1562079

+4

** AHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH!** 我很抱歉...... 我忘了,我已經打開'拆分keyboard'選項。 – user1562079

相關問題