2011-01-26 6 views
5

क्या किसी विशेष आईओएस एपीआई या जेनेरिक टेक्स्ट इनपुट क्षेत्र के माध्यम से गैर-मानक कुंजी के कुंजी कोड पढ़ना संभव है? मेरे पास विशेष बटन & के साथ एक मल्टीमीडिया कीबोर्ड है जो मेरे आईपैड ऐप को इन कुंजी कोडों से अवगत कराता है।मीडिया कुंजी के साथ यूएसबी कीबोर्ड के कुंजी कोड कैसे पढ़ा जाए

मुझे पता है कि आईओएस पहले से ही उनमें से कुछ का उपयोग कर सकता है (यानी वॉल्यूम अप/डाउन, अगली/पिछली ट्रैक)।

+1

यह परीक्षण करने के लिए एक दुःस्वप्न की तरह लगता है। सौभाग्य। मुझे पता है कि कहीं भी एक एपीआई है जो आपको कीबोर्ड के प्रतिनिधि बनने और चरित्र द्वारा कीपरप्रेस चरित्र प्राप्त करने की अनुमति देती है। मुझे नहीं पता कि यह आपको कितना डेटा देता है, या इसे क्या कहा जाता है। –

+0

क्या आपके पास उस कीबोर्ड कीप्रेस प्रतिनिधि का उदाहरण है? –

उत्तर

1

आप यूआईपीप्लिकेशंस को उप-वर्गीकरण करने और sendEvent: ओवरराइड करने की कोशिश कर सकते हैं ताकि यह देखने के लिए कि कौन सी घटनाएं गुजरती हैं। यह देखते हुए कि UIEvent आईओएस पर कीबोर्ड इवेंट समर्थन दस्तावेज नहीं करता है (ऐपकिट में एनएसईएन्टेंट के विपरीत), मुझे संदेह है कि आपको कीबोर्ड ईवेंट दिखाई देंगे ... लेकिन यह एक कोशिश के लायक है। मेरे पास यह कोशिश करने के लिए बीटी कीबोर्ड नहीं है।

एक 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; 
} 

इस रणनीति डेस्कटॉप कोको क्षुधा में असामान्य नहीं है और यह भी यहाँ समझाया गया है:

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

संबंधित मुद्दे