Bạn có thể muốn thử phân lớp UIApplication và ghi đè sendEvent:
để xem những sự kiện nào đi qua đó. Do UIEvent không tài liệu hỗ trợ sự kiện bàn phím trên iOS (trái ngược với NSEvent trong AppKit), tôi hoài nghi rằng bạn sẽ thấy các sự kiện bàn phím ... nhưng nó đáng để thử. Tôi không có một bàn phím BT để thử nó ra bản thân mình.
Để sử dụng một lớp con UIApplication, sửa main.m
và vượt qua lớp con của bạn như là đối số thứ ba để UIApplicationMain:
int main(int argc, char *argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
int retVal = UIApplicationMain(argc, argv, YourApplicationSubclass, nil);
[pool release];
return retVal;
}
Chiến lược này không phải là hiếm trong các ứng dụng Cocoa máy tính để bàn và cũng có thể được giải thích ở đây:
http://cocoawithlove.com/2009/05/intercepting-status-bar-touches-on.html
Điều này nghe như một cơn ác mộng để kiểm tra. Chúc may mắn. Tôi biết có một API ở đâu đó cho phép bạn trở thành đại biểu của bàn phím và nhận được nhân vật nhấn phím bằng ký tự. Tôi không biết bao nhiêu dữ liệu nó mang lại cho bạn mặc dù, hoặc những gì nó được gọi là. –
Bạn có ví dụ về Bàn phím bấm phím đại biểu không? –