我想检查是否将带有名称"image.png"
的图像设置为 image view "imgView"
。我知道如何在正常情况下使用 Swift 执行此操作,ViewController.swift
但不知道如何在手表套件扩展 ( InterfaceController.swift
) 中执行此操作。你们中有人知道我该怎么做吗?
问问题
285 次
1 回答
0
查看 WKInterfaceImage 的标题:
@available(watchOS 2.0, *)
class WKInterfaceImage : WKInterfaceObject, WKImageAnimatable {
func setImage(image: UIImage?)
func setImageData(imageData: NSData?)
func setImageNamed(imageName: String?)
func setTintColor(tintColor: UIColor?)
}
API 只有 setter,没有 getter。一种策略可能是对其进行子类化并跟踪设置,并编写自己的自定义 getter,但不幸的是,您无法更改为情节提要中的自定义类,因此无论如何您都无法使用该自定义子类。您也无法以编程方式直接读取从情节提要中设置的图像。
但是要回答你的问题,你不能问 WKInterfaceImage 它有什么图像。唯一的方法是跟踪您手动设置的图像,如下所示:
@IBOutlet var myImage: WKInterfaceImage!
var lastImageUsed: String? = "image.png" // Pre-populate with the image used for myImage in the storyboard
func setImageWrapper(newImage: String) {
lastImageUsed = newImage
myImage.setImageNamed(newImage)
}
func getImageWrapper() -> String? {
return lastImageUsed
}
于 2015-06-09T21:48:39.773 回答