iphone - Hide IOS keyboard with multiple textFields -


मेरे पास 2 textFields किनारे, countryCodeTextField और cellphoneTextField

countryCodeTextField पर है I मेरे पास एक एक्शन चयन है देश पर संपादित किया गया था संपादित करें देश <कोड> - (IBAction) का चयन करेंदेश: (आईडी) प्रेषक {countryCodeTextField.delegate = self; [CountryCodeTextField इस्तीफा फर्स्ट रेस्पॉन्डर];

  • ध्यान दें कि स्वयं & lt; UITextFieldDelegate & gt; को लागू करता है।

    समस्या तब होती है जब उपयोगकर्ता क्लिक के सेलफोन कुंजीपटल यदि वह देश पर क्लिक करता है तो कोडटिफफ़िल्ड कुंजीपटल कभी भी खारिज नहीं होता है।

    यदि व्यक्ति देश पर क्लिक करता है तो पहले कुंजीपटल कभी नहीं दिखाई देता है (जो कि मैं चाहता हूं)।

    उपयोगकर्ता कुंजीपटल टेस्टफिल्ड को पहली बार और फिर देशकोड टेक्स्टफ़िल्ड पर क्लिक करते समय क्यों नहीं छुपाया जाता है?

    यदि आप उपयोगकर्ता को किसी विशेष यूआईटीफ़िक्फिल्ड को संपादित करने में सक्षम होने के लिए नहीं चाहते हैं, तो इसे सक्षम न करें।

      UITextField * textField = ... // किसी तरह पाठ क्षेत्र को आवंटित किया गया है। सक्षम = कोई   

    या बस इंटरफ़ेस बिल्डर में सक्षम चेकबॉक्स को चेक करें। फिर टेक्स्टफील्ड अभी भी वहां होगा और आप पाठ को कॉन्फ़िगर करके इसे अपडेट कर पाएंगे। लेकिन जैसा कि टिप्पणियों में उल्लिखित है, यूटिडफिल्ड को यूटिफ़ाल्ड की संपादन योग्य होने की उम्मीद है।

    इसके अलावा, आप IBAction कॉलबैक में प्रतिनिधि क्यों स्थापित कर रहे हैं? मुझे लगता होगा आप इंटरफ़ेस बिल्डर में या जब आप कोड में UITextField बनाते हैं तो यह बेहतर होगा।

    संपादित करें:

    संपादित करें - ठीक है - ताकि आप उपयोगकर्ताओं को चुन सकें बक्से पर क्लिक करें, लेकिन फिर एक कस्टम सबव्यूज़ ले आये जिससे से वे कुछ चुनते हैं जो बॉक्स भरेंगे।

    इसलिए जब आप इसे बनाते हैं (ऊपर वर्णित है) और निम्नलिखित को कार्यान्वित करते हैं तो यूआईटीextफ़िल्ड प्रतिनिधि सेट करें UITextFieldDelegate प्रोटोकॉल: <पूर्व> - (BOOL) textFieldShouldBeginEditing: (UITextField *) textField {वापसी नहीं; }

    कोई वापसी नहीं करने के लिए ध्यान दें कि यदि आप अपने दोनों यूआईटीईफ़ेल्डफिल्ड के लिए एक ही प्रतिनिधि का प्रयोग कर रहे हैं, तो आपको इस पद्धति को दूसरे क्षेत्र के लिए हाँ वापस करने की आवश्यकता होगी। उदाहरण के लिए, ऐसा कुछ:

      - (BOOL) textFieldShouldBeginEditing: (UITextField *) textField {यदि (textField == countryTextField) वापस नहीं; हां वापसी; }   

    उम्मीद है कि इसे कीबोर्ड प्रदर्शित होने से रोकना चाहिए - और अब आपको अपने स्वयं के सबव्यूज़ को आग लगाने के लिए काम करना होगा, जिसे मैं एक IBAction के माध्यम से सुझाव देता हूं (स्पर्श करें या शायद कुछ )। आपको यहां विभिन्न चीजों का परीक्षण करना होगा, लेकिन याद रखना कि आप यूआईटीextफिल्ड के बिंदु को खराब कर रहे हैं और शायद यह काम करेगा और शायद यह नहीं होगा, और शायद यह अगले आईओएस उन्नयन में टूट जाएगा।

Comments

Popular posts from this blog

java - NullPointerException for a 2d Array -

python - Assemble mpeg file unable to play in mediaplayer -

asp.net - MVC [HandleError] HandleErrorAttribute called twice when using global logging -