Как читать коды клавиш USB-клавиатуры с помощью медиа-ключей - PullRequest
5 голосов
/ 26 января 2011

Можно ли читать коды клавиш нестандартных ключей с помощью специального API для iOS или через общее поле TextInput? У меня есть мультимедийная клавиатура со специальными кнопками, и я хочу, чтобы приложение iPad знало эти коды клавиш.

Я знаю, что iOS уже может использовать некоторые из них (например, увеличение / уменьшение громкости, следующий / предыдущий трек).

1 Ответ

1 голос
/ 08 марта 2011

Возможно, вы захотите попробовать создать подкласс UIApplication и переопределить sendEvent:, чтобы увидеть, какие события проходят через него.Учитывая, что UIEvent не документирует поддержку событий клавиатуры в iOS (в отличие от NSEvent в AppKit), я скептически отношусь к тому, что вы увидите события клавиатуры ... но стоит попробовать.У меня нет клавиатуры BT, чтобы попробовать это сам.

Чтобы использовать подкласс UIApplication, отредактируйте main.m и передайте свой подкласс в качестве третьего аргумента UIApplicationMain:

int main(int argc, char *argv[]) {
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    int retVal = UIApplicationMain(argc, argv, YourApplicationSubclass, nil);
    [pool release];
    return retVal;
}

Эта стратегия не является чем-то необычным в настольных приложениях Cocoa и также объясняется здесь:

http://cocoawithlove.com/2009/05/intercepting-status-bar-touches-on.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...