2011-01-21 14 views
9

मेरे पास कई यूआईटीएक्स्टफिल्ड्स हैं जो समूह में हैं ... मुझे पहले से आखिरी तक स्थानांतरित करने में सक्षम होना चाहिए, और आखिर में इसे फर्स्ट रेस्पॉन्डर बनाना होगा।अगले टेक्स्टफील्ड पर जाने के लिए कीबोर्ड कैसे प्राप्त करें

मैंने सोचा कि अगली कुंजी फोकस को स्थानांतरित करेगी, और हो गया यह फर्स्ट रेस्पॉन्डर बन जाएगा, लेकिन स्पष्ट रूप से नहीं।

विचार?

उत्तर

12

आपको UITextFieldDelegate की ShouldReturn विधि को कार्यान्वित करना होगा और वहां अगला टेक्स्ट फ़ील्ड बनें फर्स्ट रेस्पॉन्डर()। फिर वापसी/अगला आपको अगले क्षेत्र में ले जाएगा। यदि अंतिम टेक्स्टफील्ड पर रिटर्न मारा जाता है तो आप उस क्षेत्र पर ResignFirstResponder() को कॉल करेंगे।

+0

धन्यवाद ... बिल्कुल वही जो मैं ढूंढ रहा था ... – SpokaneDude

0

आपको उस दृश्य को मैन्युअल रूप से ले जाना है जिसमें टेक्स्ट फ़ील्ड हैं, जिस तरह से आप चाहते हैं कि टेक्स्ट फ़ील्ड कीबोर्ड से ऊपर है।

+0

Dimitris ... मुझे नहीं लगता कि आप मेरे प्रश्न को समझते हैं ... यह दृश्य में कोई समस्या नहीं है ... यह है कि जब मैं कीबोर्ड पर अगला टैप करता हूं, तो मैं चाहता हूं कि फोकस अगले टेक्स्टफील्ड पर जाएं ... जब तक कि यह आखिरी तक नहीं पहुंच जाता है, उस बिंदु पर यह फर्स्ट रेस्पॉन्डर बन जाता है और कीबोर्ड गायब हो जाता है। – SpokaneDude

18

"स्वीकृत उत्तर" सही है, लेकिन मैंने सोचा कि मोनो टच के लिए नए लोगों के लिए थोड़ा कोड चोट नहीं पहुंचाएगा।

public override void ViewDidLoad() { 
    base.ViewDidLoad(); 

    // make first text field have focus 
    this.txtMake.BecomeFirstResponder(); 

    // make 'return' shift focus to next text field 
    this.txtMake.ShouldReturn = delegate(UITextField textField) { 
     this.txtModel.BecomeFirstResponder(); 
     return true; 
    }; 

    // make 'return' on last text field save and close the form 
    this.txtModel.ShouldReturn = delegate(UITextField textField) { 
     this.txtModel.ResignFirstResponder(); 
     this.SaveAndClose(); 
     return true; 
    }; 
} 

private void SaveAndClose() { 
    // todo: do something with your data 

    // navigate back 
    this.NavigationController.PopViewControllerAnimated(true); 
} 

आशा है कि इससे दूसरों की मदद मिलेगी।

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