2011-04-29 22 views
7

आईपैड कीबोर्ड के निचले दाएं भाग पर एक बटन है जो कीपैड को छिपाना है।प्रोग्रामेटिक रूप से "आईपैड कीबोर्ड छुपा बटन" के साथ मैं कैसे बातचीत कर सकता हूं?

enter image description here

मैं कैसे प्रोग्राम के रूप में इसके साथ बातचीत कर सकते हैं? (बटन प्राप्त करें और उसके बाद UIControlEventTouchUpInside भेजें)।

क्या कोई इसे जानता है?

[संपादित करें] मेरे मामले में, कीबोर्ड एक मोडल व्यू पर दिखाया गया है।

+1

इस भेजने की तुलना में एक अलग व्यवहार है - (शून्य) का मानना ​​है कि आप संपादित कर रहे हैं dismissFirstResponder? –

+0

मेरे मामले में, इस्तीफा देना फर्स्ट रेस्पॉन्डर काम नहीं करता है क्योंकि मैं यूआईडीएटपीकर को प्रदर्शित करने के लिए एक मोडल व्यू (यूआईएमओडल प्रेजेंटेशनफॉर्मशीट) पर आईपैड कीबोर्ड को छिपाना चाहता हूं, इसलिए यदि संभव हो तो मैं उस घटना को कुंजीपैड को छिपाने के लिए आग लगाना चाहूंगा –

+0

यदि आप UIDatePicker प्रस्तुत करते हैं और इसे बनाते हैं पहला उत्तरदाता, कीबोर्ड जाना चाहिए, नहीं? वह इतना अच्छा क्यों नहीं है? – ipmcc

उत्तर

1

ऐसा कुछ? मुझे याद नहीं है कि मुझे यह कोड कहां मिला, लेकिन मैंने इसे ऑन-स्क्रीन कीबोर्ड टॉगल करने के लिए उपयोग किया क्योंकि ब्लूटूथ एक कनेक्ट होने पर इसे डिफ़ॉल्ट रूप से छुपाया जाएगा।

- (void) toggleKeyboard(UIKeyboardImpl * keyImpl){ 

    if (UIKeyboardAutomaticIsOnScreen()) { 
     UIKeyboardOrderOutAutomatic(); 
    } else { 
    UIKeyboardOrderInAutomatic(); 
} 

संपादित


मैं where पाया मैं से इस कोड को मिला है। यह ठीक काम करता है लेकिन पकड़ यह है कि आपको निजी ढांचे GraphicsServices आयात करने की आवश्यकता है, जो आपके ऐप को ऐप स्टोर से अस्वीकार कर देगा।

+0

धन्यवाद, मैं इसे आज़माउंगा, उम्मीद है कि यह काम करता है :) –

+0

क्या आप इसे काम करने के लिए मिलता है? – David

+0

हाय जॉनी घास, यह काम नहीं करता है :( –

1

सामान्य रूप से, आप सक्रिय इनपुट दृश्य पर resignFirsResponder संदेश भेजेंगे।

+0

मैंने इसे पहले से ही कोशिश की, लेकिन मेरे मामले में, एक मोडल व्यू पर कीबोर्ड प्रभावी नहीं होता है। –

2

disablesAutomaticKeyboardDismissal ओवरराइड NO नीचे के रूप में वापस जाने के लिए आप कीबोर्ड खारिज करने के लिए जब आप resignFirstResponder, तब भी जब अपने UITextView एक मॉडल दृश्य पर है की अनुमति देता है। आप अपने दृश्य नियंत्रक के लिए इस कोड रखना चाहिए, जिसमें से आप कुंजीपटल आरंभ:

- (BOOL)disablesAutomaticKeyboardDismissal { 
    return NO; 
} 

स्रोत: https://stackoverflow.com/a/6268520

+0

स्टैक ओवरफ़्लो में आपका स्वागत है! हालांकि यह सैद्धांतिक रूप से सवाल का जवाब दे सकता है, [यह होगा बेहतर हो] [http://meta.stackexchange.com/q/8259) यहां उत्तर के आवश्यक हिस्सों को शामिल करने के लिए, और संदर्भ के लिए लिंक प्रदान करें। – jjnguy

+0

धन्यवाद! इससे मदद मिली! –

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

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