¿Cómo obtengo el button para escuchar el control segmentado en Swift?

Estoy intentando build una aplicación de conversión de temperatura. Utilicé el control segmentado para que los usuarios selectn cómo se debe calcular la temperatura (Celsius a Fahrenheit y de Fahrenheit a Celsius). También he creado un button que convertiría la temperatura ingresada por el método seleccionado en el control segmentado.

Aquí está la function que he creado en el controller:

@IBAction func convertTemp(sender: AnyObject) { let t = Double(tempTextfield.text!) let type = converterType.selectedSegmentIndex let tempM = tempModel(temp:t!) if type == 0 { finalTemp.text = String(tempM.celsius2Fahrenheit()) } if type == 1 { finalTemp.text = String(tempM.fahrenheit2Celsius()) } } 

Y esto es lo que tengo en mi model.

 class tempModel { var temp: Double init (temp:Double){ self.temp = temp } func celsius2Fahrenheit()->Double{ return 32 + temp * 5 / 9; } func fahrenheit2Celsius()->Double{ return (temp - 32) * 5/9; } } 

No estoy seguro de qué estoy haciendo mal. Todo less el Button(convert) funciona de la manera que yo quiero que funcione. No puedo encontrar el error.

Y no sé si esto ayuda, pero recibo este error:

2015-11-16 18: 07: 02.496 TemperatureConverer [5201: 194432] No se puede encontrar el keyboard que admita el tipo 8 para el keyboard iPhone-Portrait-DecimalPad; usando 4131139949_Portrait_iPhone-Simple-Pad_Default
16/11/2015 18: 07: 04.827 TemperatureConverer [5201: 194432] No se puede encontrar el keyboard que sea compatible con el tipo 8 para el keyboard iPhone-Portrait-DecimalPad; usando 4131139949_Portrait_iPhone-Simple-Pad_Default (lldb)

Encontré una solución temporal. Mi problema fue la comunicación entre my viewController y mi tempModel. Mi código funcionó cuando eliminé la class tempModel e inserté el método directamente en la function en mi controller. Entonces, en mi controller, tengo esto …

 @IBAction func convertTemp(sender: AnyObject) { let temp = Double(tempTextfield.text!)! var newTemp = "" if converterType.selectedSegmentIndex == 0{ newTemp = String(format: "%.2f Farenheit", 32+temp*5/9) } if converterType.selectedSegmentIndex == 1{ newTemp = String(format: "%.2f Celsius",(temp-32)*5/9) } finalTemp.text = newTemp } 

Sé que eventualmente tendré que aprender a vincular mi controller y mi model juntos. Pero hasta que lo descubra, esta es una solución que solucionó mi problema.