1
A
回答
0
也許這有助於...
首先註冊通知:
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(keyboardWillHide:) name:UIKeyboardWillHideNotification object:nil];
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil];
然後收到:
-(void)keyboardWillHide:(NSNotification *)_notification {
NSLog(@"%@",[_notification infoDict]);
}
-(void)keyboardWillShow:(NSNotification *)_notification {
NSLog(@"%@",[_notification infoDict]);
}
這將是剛纔打電話的時候裏面的鍵盤會顯示並且沒有連接外部鍵盤!如果連接了外部鍵盤,WillShow Notification將不會被調用。
來源: How to detect external keyboard connectification in objective-c?
另一種方式可以是:
間接和SDK安全的方式就是讓文本字段的第一響應。如果外部鍵盤存在,則不應發佈UIKeyboardWillShowNotification本地通知。
您可以聽取「GSEventHardwareKeyboardAttached」(kGSEventHardwareKeyboardAvailabilityChangedNotification)Darwin通知,但這是一個私有API,因此如果您使用此API,您的應用可能會被拒絕。要檢查外部硬件是否存在,請使用專用的GSEventIsHardwareKeyboardAttached()函數。
UIKit偵聽此並相應地設置UIKeyboardImpl.isInHardwareKeyboardMode屬性,但這又是私有API。
來源:How can I detect if an external keyboard is present on an iPad?
相關問題
- 1. 檢測iPad鍵盤隱藏與外部鍵盤連接?
- 2. 如何檢測Android設備是否與外部鍵盤連接?
- 3. 如何檢測鍵盤是否存在
- 4. iPad檢測鍵盤/語言
- 5. 編程檢測鼠標和鍵盤是否插入
- 6. 如何檢測硬件鍵盤是否連接到iPhone?
- 7. 如何檢測表面鍵盤是否連接?
- 8. 檢查外鍵是插入
- 9. 檢測iPad的鍵盤隱藏按鈕
- 10. 如何檢測鍵盤輸入密鑰?
- 11. 如何檢測音頻插孔是否插入/不在我的iPhone/iPad中?
- 12. 如何檢測objective-c中的外部鍵盤連接?
- 13. iPad UIButtons響應外部鍵盤輸入
- 14. 檢測鍵盤輸入Matlab
- 15. 鍵盤輸入檢測
- 16. 檢測鍵盤是否連接到Windows Surface?
- 17. 如何檢測iPad用戶點擊鍵盤隱藏按鈕?
- 18. 如何檢測Android設備是否有QWERTY鍵盤
- 19. 如何檢測用戶是否在觸摸軟鍵盤?
- 20. 如何檢測用戶是否遠離鍵盤?
- 21. 如何檢測Windows移動設備是否擴展了鍵盤?
- 22. 如何檢測EditText是否覆蓋鍵盤
- 23. 鍵盤檢測
- 24. 如何以編程方式檢查鍵盤是否連接?
- 25. JQuery - 如何檢查輸入是否來自鍵盤?
- 26. Android - 如何檢查textview當前是否顯示鍵盤輸入
- 27. 如何檢查用戶是否在鍵盤上輸入「enter」? (C)
- 28. 如何檢測是否有任何鍵盤功能鍵被按下?
- 29. 如何檢測硬盤是否通過USB連接?
- 30. 如何檢查iPad是否爲iPad Pro
問題是在這裏我用uiwebviw與編輯div.so UIKeyboardWillShowNotification也與外部鍵盤打電話? – Suravi