![](/img/trans.png)
[英]Passing data from viewcontroler to tab viewed controllers in swift
[英]Swift 3, accessing user input Text Field values from ViewControler and used them in a model .swift file
这是我的第一个问题。 我是swift和编程的新手,所以如果我问愚蠢的问题请不要笑
所以我有一个SettingsViewControler,用户可以设置它们的值,让我们设置温度值。 我正在尝试做的是获取他们输入的温度值并将其传递给我的model.swift文件,在公式中引入该值,以使用输入温度计算新值。 我希望这是有道理的。
有没有办法通过将类表单VC调用到我在model.swift文件中创建的newData类来直接执行此操作,或者我应该使用某些方法(如UserDefaults)来传递数据。
这是代码示例:
首先,我创建了一个Settings.swift文件
// Settings.swift file
import Foundation
class Settings {
var inputTemperature: Float = 0
init(inputTemperature: Float) {
self.inputTemperature = inputTemperature
}
}
这是设置视图控制器
//Settings ViewCOntroller. swift file
import UIKit
class SettingsViewController: UIViewController {
@IBOutlet weak var inputTemperatureTextField: UITextField!
var getTemp = Settings(inputTemperature: 72)
override func viewDidLoad() {
super.viewDidLoad()
}
func getValues() {
getTemp.inputTemperature = (inputTemperatureTextField.text! as NSString).floatValue
}
}else if textField == inputTemperatureTextField {
textField.resignFirstResponder()
getValues()
}
所以现在我有另一个Calculations.swift文件,我想获取inputTemperature值以在公式中使用它
//Calculation. swift file
import Foundation
class Calculations {
var inputA: Float = 0
var inputB: Float = 0
var resultC: Float = 0
init(inputA: Float, inputB: Float) {
self.inputA = inputA
self.inputB = inputB
}
// Here i want to add the temperature value
func calc() {
resutC = inputA * inputC // * inputTemperature
}
我想从SettingsView COntroller获取get(inputTemperatureTextField.text!as NSString).floatValue值,将其引入位于Calculation.swift文件中的公式
谢谢
您应该发布一些代码,以便让我们深入了解您想要的内容。 让我们在你的模型中说你有温度值
var temp: Int?
然后,您可以在VC中初始化它,并访问临时值
var model = Model()
let model.temp = inputTextField.text
如果您使用model.swift
进行计算。 您将在View控制器中创建模型类的对象,在创建对象后,您可以将测试字段值传递给模型。
var modelObject: model? = model();
modelObject.temprature = txtTemprature.text;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.