【发布时间】:2017-10-25 04:55:45
【问题描述】:
我正在开发一个简单的自定义转换器应用程序。 问题是我为每个(!)转换(华氏到摄氏度,盎司到千克等)创建了一个单独的视图控制器,我想知道如何仅重用一个转换器视图控制器并更改在后台进行计算?
这是我到目前为止所做的:
- mainVC(包含每个转换器视图控制器的按钮)
- (现在有 10 个)转换器 VC 用于用户可以进行的每次转换
- MathLib.swift 为每个数学公式提供不同的函数
每个转换器 VC 都包含一个名称标签(例如,盎司到千克)、一个数字键盘和一个输入/输出标签。当用户触摸一个数字时,转换是使用 MathLib.swift 中正确的数学公式即时完成的。我只是使用相应的公式返回。这是一个公式的例子:
static func stoneToKilo(stone: Double) -> Double {
let kilo = stone / 0.15747
return kilo
}
现在我想做的只是拥有一个(!)转换器 VC,并根据在 mainVC 中按下的按钮,在 MathLib 中使用正确的公式,并将标签的名称更改为正确的转换类型。
所有按钮都应该只指向一个 VC。现在,当按下按钮并显示视图控制器时,我如何检查用户来自哪个按钮?例如按钮名称或标签?
当我知道按钮名称或标签时,如何使用它在 MathLib.swift 中使用正确的公式或更改名称标签?我必须使用开关盒吗?如果是这样:如何设置开关盒以检查使用的按钮,然后指向正确的数学函数并更改名称标签?
简而言之:只使用一个 VC,检查是哪个按钮将用户带到了这个 VC,然后使用一些东西(切换大小写?)来改变一些东西,比如 VC 上的标签,并在 library.swift 文件中使用正确的函数.
这对我来说非常困难,如果你能帮助我,我将不胜感激。
【问题讨论】:
-
您可以从查看NSMeasurement 框架开始,因为它可以为您完成转换。然后你可以有一个单一的视图控制器,你所有的按钮需要做的就是在 VC 上设置适当的输入和输出测量单位属性。
标签: ios swift viewcontroller