क्या UIView में वर्तमान में सक्रिय UITextField या UITextView प्राप्त करना संभव है, इसलिए मैं कीबोर्ड को [text resignFirstResponder];
से छुपा सकता हूं?वर्तमान में सक्रिय UITextField/UITextView कैसे प्राप्त करें और इस्तीफा दें फर्स्ट रेस्पॉन्डर?
उत्तर
आईओएस 2.0 के रूप में और बाद में, कीबोर्ड के बिना एचएवी को खारिज करने का एक आसान तरीका है वर्तमान में सक्रिय नियंत्रण को ट्रैक करने, या सभी उपलब्ध नियंत्रणों के माध्यम से पुनरावृत्त करने, या UITextFieldDelegate
का उपयोग करने के लिए।
[self.view endEditing:YES]
डॉक्स से:
endEditing:
दृश्य का कारण बनता है (या इसके एम्बेडेड पाठ क्षेत्रों में से एक) करने के लिए पहले प्रत्युत्तर स्थिति इस्तीफा देने।
- (BOOL
) endEditing :(BOOL
) बलपैरामीटर
बल
निर्दिष्टYES
इस्तीफा देने के लिए, चाहे वह ऐसा करने के लिए चाहता है की परवाह किए बिना पहले प्रत्युत्तर के लिए मजबूर करने।
वापसी मूल्य
YES
यदि दृश्य पहले प्रत्युत्तर स्थिति याNO
इस्तीफा दे दिया है, तो ऐसा नहीं किया।चर्चा
इस विधि वर्तमान दृश्य और पाठ क्षेत्र वर्तमान में पहले प्रत्युत्तर है कि के लिए अपने subview पदानुक्रम पर लग रहा है। यदि यह एक पाता है, तो यह पूछता है कि पाठ फ़ील्ड को पहले उत्तरदाता के रूप में इस्तीफा देना है। यदि बल पैरामीटरYES
पर सेट किया गया है, तो टेक्स्ट फ़ील्ड कभी भी नहीं पूछा जाता है; इसे इस्तीफा देने के लिए मजबूर होना पड़ता है।स्विफ्ट 3
के लिए
func findActiveResponderFrame(view:UIView)->UIView?{
if view.isFirstResponder() {
return view
} else {
for sub in view.subviews {
if let subView = sub as? UIView,
found = findActiveResponderFrame(subView){
return found
}
}
}
return nil
}
यदि आप विशेष रूप से उत्तरदाता टेक्स्ट फ़ील्ड लाने के लिए चाहते हैं तो आप निम्न का पालन कर सकते हैं। Get the current first responder without using a private API
आप कर सकते हैं भी कोड निम्न का उपयोग करता है, तो आप केवल सक्रिय पाठ क्षेत्र कुंजीपटल खारिज करना चाहते
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
return YES;
}
कोई रास्ता सीधे क्या वस्तु वर्तमान प्रथम प्रत्युत्तर है प्राप्त करने के लिए (है कि मैं के बारे में पता नहीं है, कम से कम) उन्हें व्यक्तिगत रूप से परीक्षण किए बिना।
- (void)dismissKeyboard {
if (myTextField1.isFirstResponder) {
[myTextField1 resignFirstResponder];
}
else if (myTextField2.isFirstResponder) {
[myTextField2 resignFirstResponder];
}
else if (myTextField3.isFirstResponder) {
[myTextField3 resignFirstResponder];
}
else if (myTextField4.isFirstResponder) {
[myTextField4 resignFirstResponder];
}
}
वास्तविकता में, हालांकि, मैं इसे इस तरह से करने के लिए करते हैं, कि क्या एक विशेष पहले परीक्षण के बिना: इस प्रकार आप क्या कर सकते, एक विधि सभी subviews जो क़यास सक्रिय पहले प्रत्युत्तर हो सकता युक्त बनाने के लिए है UIView वर्तमान प्रथम प्रत्युत्तर है, और नहीं लगता कि किसी भी सराहनीय प्रदर्शन हिट/मुद्दा (है कि मैं वैसे भी देखा है) है है:
- (void)dismissKeyboard {
//Send resignFirstResponder message to all possible first responders...
[myTextField1 resignFirstResponder];
[myTextField2 resignFirstResponder];
[myTextField3 resignFirstResponder];
[myTextField4 resignFirstResponder];
}
आशा है कि मदद करता है ...
यह आवश्यक नहीं है, [self.view endEditing: YES] ; करूँगा –
यह तेजी से कोड पहले प्रत्युत्तर खोजने में काम करता है
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
self.view.endEditing(true)
}
अद्यतन इस समारोह स्विफ्ट 3 में किसी भी सक्रिय पाठ फ़ील्ड के कुंजीपटल खाल:
- 1. इस्तीफा फर्स्ट रेस्पॉन्डर काम नहीं करते?
- 2. बनने की स्थिति में कीबोर्ड के शीर्ष पर ऑब्जेक्ट रखना फर्स्ट रेस्पॉन्डर या इस्तीफा फर्स्ट रेस्पॉन्डर?
- 3. फर्स्ट रेस्पॉन्डर लापता रेडो:
- 4. आईपैड पॉपओवर टेक्स्टफील्ड - इस्तीफा फर्स्ट रेस्पॉन्डर कीबोर्ड को खारिज नहीं करता
- 5. सी # वर्तमान सक्रिय विंडो के बारे में जानकारी प्राप्त करें
- 6. स्टोरीबोर्ड संपादक में "फर्स्ट रेस्पॉन्डर" और "एक्जिट" बॉक्स उद्देश्य क्या हैं?
- 7. LibGit2Sharp के साथ वर्तमान/सक्रिय शाखा कैसे प्राप्त करें?
- 8. कोको में विंडो नियंत्रक से वर्तमान प्रथम प्रतिक्रिया कैसे प्राप्त करें?
- 9. वर्तमान माह और वर्ष कैसे प्राप्त करें
- 10. आईफोन एसडीके में फाइल मालिक और फर्स्ट रेस्पॉन्डर क्या हैं - एक्सकोड?
- 11. पायथन में वर्तमान सीपीयू और रैम उपयोग कैसे प्राप्त करें?
- 12. एक .NET आवेदन के वर्तमान/सक्रिय सुरक्षा क्षेत्र प्राप्त करें?
- 13. वर्तमान सक्रिय सत्र की सभी प्रक्रियाएं प्राप्त करें
- 14. अंतिम सक्रिय विंडो प्राप्त करें: पिछली सक्रिय विंडो प्राप्त करें
- 15. वर्तमान निर्देशिका कैसे प्राप्त करें?
- 16. अगले टेक्स्टफील्ड पर जाने के लिए कीबोर्ड कैसे प्राप्त करें
- 17. आईओएस 6 में, - [यूआईटीएक्स्टफिल्ड बन गया फर्स्ट रेस्पॉन्डर] -व्यू में काम नहीं करता है WillAppear:
- 18. FragmentPagerAdapter में वर्तमान स्थिति कैसे प्राप्त करें?
- 19. बनें फर्स्ट रेस्पॉन्डर कीबोर्ड दूसरी बार नहीं दिखाता है (आईओएस 6 + स्टोरीबोर्ड)
- 20. वर्तमान कैनवास कैसे प्राप्त करें?
- 21. वर्तमान टाइमस्टैम्प कैसे प्राप्त करें?
- 22. एसक्यूएल में वर्तमान डेटाटाइम कैसे प्राप्त करें?
- 23. सी ++ में वर्तमान सीपीयू और रैम उपयोग कैसे प्राप्त करें?
- 24. PRISM का उपयोग कर किसी क्षेत्र में वर्तमान सक्रिय दृश्य कैसे प्राप्त करें?
- 25. jquery टैब के वर्तमान में सक्रिय टैब
- 26. सक्रिय धागा गिनती कैसे प्राप्त करें?
- 27. ग्रहण प्लगइन में "सक्रिय संपादक" कैसे प्राप्त करें?
- 28. JDesktopPane - सक्रिय फ्रेम कैसे प्राप्त करें
- 29. NSTextField बन गया फर्स्ट रेस्पॉन्डर जागने में काम नहीं करता है FromNib
- 30. वर्तमान नोटिफिकेशन प्राप्त करें
संभावित डुप्लिकेट [मैं कैसे निर्धारित कर सकता हूं वर्तमान में UITextField चयनित है?] (http://stackoverflow.com/questions/8956704/how-can-i-determine-the-uitextfield-currently- चयनित) –