2013-01-30 20 views
12

मूल रूप से मैं उपयोगकर्ता को टेक्स्ट फ़ील्ड में क्लिक करना चाहता हूं और यह कीबोर्ड के बजाए एक पॉप्युलेट पिकर्व्यूव लाता है। इसे एक बटन के साथ एक टूलबार की भी आवश्यकता होगी, साथ ही मैं अनुमान लगाऊंगा। वर्तमान में मेरे पास आउटपुट और एक्शन के रूप में फ़ील्ड सेट है और बहुत कुछ नहीं है। मेरे पास कोड में एक एक्शनशीट भी होती है जब उपयोगकर्ता कुछ भी सबमिट करता है, यदि इससे संभवतः इसके लिए एक्शनशीट का उपयोग करने में कोई फर्क पड़ता है।कीबोर्ड इनपुट आईओएस

मैंने इस विषय पर शोध करने की कोशिश की लेकिन 99% विषय pickerviews (या बहुत पुराना कोड) के बजाय डेटपिकर्स के साथ थे। मैं आईओएस के साथ बहुत नया हूं और साथ ही मेरे साथ बेकार हूं।

संदर्भ के लिए यह कैसा दिखता है इसकी एक छवि यहां दी गई है।

उत्तर

32

UITextField अब inputView संपत्ति है। यहां आप इसे एक डिस्प्ले असाइन कर सकते हैं जिसे आप एक यूआईपीकर व्यू सहित चाहते हैं। आप सेटअप pickerview हालांकि चाहिए और अपने ज में UITextFieldDelegate और UIPickerViewDataSource को लागू करना चाहिए:

@interface ViewController : UIViewController <UIPickerViewDataSource, UIPickerViewDelegate> 

फिर पिकर दृश्य बना सकते हैं और पाठ फ़ील्ड के लिए असाइन करें।

UIPickerView *pickerView = [[UIPickerView alloc] init]; 
pickerView.dataSource = self; 
pickerView.delegate = self; 
// ... ... 
self.pickerTextField.inputView = pickerView; 

क्योंकि आप UIPickerView इंटरफेस कार्यान्वित अब आप इन तरीकों को लागू करना चाहिए:

- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component; 
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView; 
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component; 

फिर आप जाने के लिए अच्छा होना चाहिए। यदि आपको अधिक जानकारी चाहिए तो कुछ अन्य तरीकों के लिए दस्तावेज़ देखें।

+0

क्या मैं इस संपत्ति को टेक्स्टफील्ड दबाए गए एक्शन विधि में संपादित करूंगा? – JohnV

+0

मैं शायद इसे ViewController के लिए दृश्य DidLoad में करूँगा। जब भी आप एक यूआईपीकर और सामान्य कीबोर्ड के बीच स्विच करने जा रहे हैं, तब तक बटन दबाए जाने पर वास्तव में कोई बिंदु नहीं है। – Firo

+0

ऐसा लगता है कि काम करता है। यह कीबोर्ड के बजाए एक ब्लैक बॉक्स लाता है। मुझे नहीं पता कि मैं इसे पॉप्युलेट करने या जांचने के लिए टूलबार जोड़ने के बारे में कैसे जाऊंगा। कोई विचार? मेरे पास एनएसएआरएआरई है लेकिन मुझे नहीं पता कि इसे कैसे लिंक करें क्योंकि यह वास्तव में एक चीज नहीं है। – JohnV

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