2014-05-22 91 views
0

是否有檢測切換鍵盤語言的通知或委託功能?目標中的鍵盤語言C

當我按下鍵盤上的語言鍵..我需要一個委託函數,在代碼中處理這個來改變UITextfield的方向。

+0

檢查以下鏈接: http://stackoverflow.com/questions/11801587/is-there-a-delegate-call-when-ios-keyboard-language-changes – PREMKUMAR

回答

3

根據this answer

答案是,當你切換語言,該UIKeyboardDidShowNotification火災每次更改

所以你只需要註冊該通知,然後運行代碼:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWasShown:) name:UIKeyboardDidShowNotification object:nil]; 

- (void)keyboardWasShown:(NSNotification *)notification 
{ 
    NSString * currentLanguage = [UITextInputMode currentInputMode].primaryLanguage; 
} 

更新

上述方法不起作用,但是如果我們註冊到UITextInputCurrentInputModeDidChangeNotification,我們確實會得到一個回調。

+0

UIKeyboardDidShowNotification只有當射擊uikeyboard將顯示,但如果我按語言鍵改變鍵盤的語言它不會發射任何東西:( –

+0

@ZiadBouIsmail你是對的,我猜它已經工作過,現在不再了,請看我的更新 – Gad

+0

謝謝@它工作的GadMarkovits :) –