Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/118.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 使用变量引用图像并更改图像_Ios_Image_Swift_Variables_Iboutlet - Fatal编程技术网

Ios 使用变量引用图像并更改图像

Ios 使用变量引用图像并更改图像,ios,image,swift,variables,iboutlet,Ios,Image,Swift,Variables,Iboutlet,感谢您抽出时间阅读此文章 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) {

感谢您抽出时间阅读此文章

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)。所以基本上这就是我想要的(但显然不起作用):

如何做到这一点


向您致以最诚挚的问候,并感谢您的帮助

在初始化图像后但在访问图像之前,将图像放入数组

class InterfaceController: WKInterfaceController {
  // ...
  var images : [WKInterfaceImage] = []

  func viewDidLoad () {
    super.viewDidLoad
    images = [im1, im2]
  }    
}
现在,您可以根据滑块值来访问它们,滑块值用作
图像
数组的索引

或者更好,如果您可以将对
图像的首次访问限制在
im1
im2
绑定之后:

class InterfaceController: WKInterfaceController {
  // ...
  lazy var images : [WKInterfaceImage] = [im1, im2]
  // ...
}
使用上述任一选项,您可以根据特定编码样式/需要定义按钮、滑块动作或计算属性

class InterfaceController: WKInterfaceController {
  // ...
  lazy var images : [WKInterfaceImage] = [im1, im2]
  // ...
}