Как я могу объединить два дубля вместе? - PullRequest
0 голосов
/ 01 июля 2019

SwiftUI ... Возникли проблемы с использованием переменных ...

У меня есть две Переменные связывания как Doubles.

struct DisplayCalc : View {
    @Binding var mhzValue : Double
    @Binding var mhzValueStep : Double
}

Пример: mzhValue составляет 7,00

mhzValueStep, скажем, 9.40

Я хотел бы установить новую переменную, скажем, newVariable = 7.940

Есть предложения?

Спасибо .. Craig

Ответы [ 2 ]

0 голосов
/ 02 июля 2019

Вы можете сделать это легко, сдвинув значение вправо (при условии, что оно будет положительным), пока оно не станет меньше 1. Для этого вы можете использовать расширение Double. Вот код, который будет служить вашим целям.

struct ContentView : View {
    var mhzValue : Double = 7.000
    var mhzValueStep : Double = 102.200

    private var mySum: Double { mhzValue + mhzValueStep.getMinimalDouble() }

    var body: some View {
        Text("My sum is \(self.mySum)")
    }
}

extension Double {
    func getMinimalDouble() -> Double {
        var value = self
        while(value >= 1.0) {
            value /= 10.0
        }
        return value
    }
}
0 голосов
/ 01 июля 2019

Вы можете сделать это так:

struct DisplayCalc : View {
    @Binding var mhzValue : Double
    @Binding var mhzValueStep : Double

    private var mySum: Double { mhzValue + mhzValueStep }

    var body: some View {
         Text("My sum is \(self.mySum)")
    }

}

...