これは私の最初の質問です。私は迅速かつプログラミング一般的ですので、私は愚かな質問をしている場合は笑わないでください:)Swift 3、ViewControlerのユーザー入力テキストフィールド値にアクセスし、モデル.swiftファイルで使用しました
私は、ユーザーが値を設定するSettingsViewControlerので、温度値を設定すると言うことができます。私がしようとしていることは、入力した温度値を使ってmodel.swiftファイルに渡し、その値を数式に導入して、入力温度で新しい値を計算することです。私はこれが意味をなさないことを望む。
私はmodel.swiftファイルで作成したnewDataクラスにクラスフォームVCを呼び出すことで、直接行う方法がありますか、またはデータを渡すためにUserDefaultsのようなメソッドを使用する必要があります。ここで
は、コード例です:
まず私はここで
// Settings.swift file
import Foundation
class Settings {
var inputTemperature: Float = 0
init(inputTemperature: Float) {
self.inputTemperature = inputTemperature
}
}
Settings.swiftファイルを作成した設定のビューコントローラ
ある//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
}
私はget(inputTemperatureTextField.text! NSStringのよう)にある式でそれを紹介するSettingsViewコントローラから.floatValue値は
おかげ
モデルクラスの温度を取得し、モデルのインスタンスをviewControllerで作成し、初期化メソッドで温度を渡すことができます。 –