2014-09-18 12 views
18

स्विफ्ट में पिकर व्यू की आरंभिक पंक्ति कैसे सेट करूं? मुझे लगता है कि उद्देश्य सी के लिए एक कोड है, लेकिन मुझे यह समझ में नहीं आता है। अगर कोई यह समझा सकता है कि मैं उद्देश्य सी कोड को स्विफ्ट में कैसे अनुवाद कर सकता हूं जो शानदार भी होगा!स्विफ्ट: स्विफ्ट में तीन घटकों के साथ UIPickerView का डिफ़ॉल्ट मान कैसे सेट करें?

धन्यवाद

उत्तर

59

इस कोड को मैं अपने एप्लिकेशन में से एक में प्रयोग किया जाता है:

// Declare the outlet to the picker in your storyboard 
@IBOutlet var myPicker: UIPickerView! 

//... 

override func viewDidLoad() { 
//... 
    myPicker.selectRow(row, inComponent: 0, animated: true) 
} 

जाहिर है, row और 0 जो कुछ भी महत्व देता है आप चाहते हैं के साथ बदलें।

उम्मीद है कि यह मदद करता है!

+0

हाय, मैं के लिए bellow पंक्ति जोड़ें आपका सरणी आपके सुझाव की कोशिश की लेकिन यह मुझे एक त्रुटि दे दी। शायद क्योंकि मैंने इसे पहले ही बुलाया है ?? इन: कक्षा व्यू कंट्रोलर: UIViewController, UIPickerViewDelegate { और शायद वह संघर्ष? (: UIPickerView, numberOfRowsInComponent घटक: इंट pickerView) -> इंट { स्विच घटक { > इंट { वापसी 3 समारोह pickerView -: (UIPickerView pickerView) मैं इसे आगे एक साथ नीचे डाल करने के लिए समारोह numberOfComponentsInPickerView साथ भी करने की कोशिश की आदि ... – KML

+0

क्या आप मुझे मिली त्रुटि के बारे में अधिक जानकारी दे सकते हैं? क्या आपको आउटलेट को अपने स्टोरीबोर्ड में यूआईपीकर व्यू से कनेक्ट करना याद था? – mtaylor

+0

अरे, पीछा करने के लिए धन्यवाद, मैं पिकरव्यू फ़ॉन्ट को किसी अन्य रंग में बदलने में व्यस्त था और मुझे @POB से कुछ कोड सुझावों को लागू करने के लिए पूरे कोड को थोड़ा बदलना पड़ा। मैंने अभी इसे समाप्त कर लिया है और अब अपना कोड नए व्यू कंट्रोलर में लागू किया है। इसने एक जादू की तरह काम किया !! मुझे यकीन नहीं है कि पुराने कोड में क्या गलत था। आपको बहुत धन्यवाद – KML

9
@IBOutlet weak var mPicker: UIPickerView! 
var items: [String] = ["NoName1","NoName2","NoName3"] // Set through another ViewController 
var itemAtDefaultPosition: String? //Set through another ViewController 

//.. 
//.. 

var defaultRowIndex = find(items,itemAtDefaultPosition!) 
if(defaultRowIndex == nil) { defaultRowIndex = 0 } 
mPicker.selectRow(defaultRowIndex!, inComponent: 0, animated: false) 
+4

स्विफ्ट 2.0 के लिए: var defaultRowIndex = items.indexOf (itemAtDefaultPosition!) –

0

डिफ़ॉल्ट तेज 3

में pickerview में चुन लिया है तो मूल्य की तरह bellow

let pickerArray = [ 
     ["displayValue":"--Select--" as AnyObject,"id":"" as AnyObject], 
     ["displayValue":"Jame" as AnyObject,"id":"100" as AnyObject], 
     ["displayValue":"Enamul" as AnyObject,"id":"201" as AnyObject] 
    ] 

बस डिफ़ॉल्ट pickerview में चयनित

pickerViewTextField.text = pickerArray[0]["displayValue"] as! String 
संबंधित मुद्दे