I'm trying to populate an array with numbers with an increase of 0.1 each like: [0.1,0.2,0.3...]
This code is giving me the error: fatal error: Array index out of range
. What am I missing? I thing im declaring something wrong.
I will save it into a structure of type Double.
My Code
import UIKit
class PrecoDomicilioViewController: UIViewController,UIPickerViewDelegate, UIPickerViewDataSource{
@IBOutlet var euros: UIPickerView!
var pickerData:[Double] = []
override func viewDidLoad() {
super.viewDidLoad()
euros.delegate = self
euros.dataSource = self
for var i = 0; i <= 200; i++
{
pickerData[i] += 0.1
}
}
func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {
return 1
}
func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
return pickerData.count
}
func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {
return "\(pickerData[row])"
}
func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
restaurante.portes = pickerData[row]
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
}
UPDATE: Finally made it, but there are this strange numbers between 6 and 10.

Doubleuses. For exact decimal numbers such as for money and calculators useNSDecimalNumber.