Für watchOS 2
und Xcode 7.3
, versuche ich ein Bild, das ich auf der iPhone-Seite auf die Uhr Seite zu senden. In der Telefonseite, habe ich diese:Übergeben eines UIImage vom Handy zur Uhr funktioniert nicht
func sendImage() {
if WCSession.isSupported() {
let session = WCSession.defaultSession()
if session.watchAppInstalled {
do {
let image = UIImage(named: "myPic")
let imgData = NSKeyedArchiver.archivedDataWithRootObject(image!)
let dictionary = ["img": imgData]
try session.updateApplicationContext(dictionary)
} catch {
print("ERROR: \(error)")
}
}
}
}
Dann wird in der WatchKit Extension
Seite (ExtensionDelegate
-Datei), die ich habe:
func session(session: WCSession, didReceiveApplicationContext applicationContext: [String : AnyObject]) {
let initialController = WKExtension.sharedExtension().rootInterfaceController as! InterfaceController
initialController.showImage(applicationContext["img"] as! NSData)
}
und in InterfaceController
:
func showImage(imageData: NSData) {
let image = UIImage(data: imageData, scale: 1.0)
self.myImage.setImage(image!)
}
wo myImage
ist eine WKInterfaceImage
Steckdose. Wenn showImage
Methode aufgerufen wird, ist imageData
nicht nil
, aber image
ist, wenn self.myImage.setImage(image!)
aufgerufen wird. Was mache ich falsch?