感谢您花时间阅读本文。
class InterfaceController: WKInterfaceController {
var sliderValue:Int = 0
var imageName: String = ""
@IBOutlet weak var im1: WKInterfaceImage!
@IBOutlet weak var im2: WKInterfaceImage!
@IBAction func sliderAction(value: Float) {
sliderValue = Int(value)
imageName = "im\(sliderValue)"
}
@IBAction func button() {
imageName.setImageNamed(sliderValue)
}
问题:我想使用变量imageName并将其用作IBOutlet的名称(因此imageName是im1或im2)。所以基本上这就是我想要的(但显然不起作用):
imageName.setImageNamed(sliderValue)
如何做到这一点?
致以最诚挚的问候,非常感谢您的帮助!!
答案 0 :(得分:0)
在初始化之后但在访问之前将图像放入数组中。
class InterfaceController: WKInterfaceController {
// ...
var images : [WKInterfaceImage] = []
func viewDidLoad () {
super.viewDidLoad
images = [im1, im2]
}
}
现在您可以根据滑块值访问它们,用作images
数组的索引。
或者更好的是,如果您可以将images
的首次访问权限限制在im1
和im2
之后:
class InterfaceController: WKInterfaceController {
// ...
lazy var images : [WKInterfaceImage] = [im1, im2]
// ...
}
使用上述任何一种方法,您可以根据特定编码样式/需要定义按钮,滑块操作或计算属性。