Tag: ios extensions

iOS8扩展:在容器和扩展之间共享图像

我正在做一个iOS 8的扩展。 以下是我想要做的:用户从容器应用程序中的照片库中select图像,这些图像将与扩展名共享并供进一步使用。 现在我正在这样做(如果你不想读这个部分,请跳过下面的代码): 使用App Group和NSUserDefaults共享数据 。 将UIImage转换成NSData,然后将所有图像保存到一个NSArray中,然后将数组保存到一个NSDictionary中(我有很多数组,这是我组织它们的方式 – 所以我必须将它们保存到字典中),最后将字典保存到用户默认。 这是编码: NSArray *imageArray = … //this array contains all the images. //photoDataArray is a NSMutableArray; photoDataArray = [[NSMutableArray alloc]init]; for (UIImage *images in imageArray) { [photoDataArray addObject:UIImagePNGRepresentation(images)]; } NSThread * creationThread = [[NSThread alloc] initWithTarget:self selector:@selector(handleData) object:nil]; [creationThread start]; -(void)handleData{ NSDictionary *dic = [[NSDictionary alloc]init]; […]

iOS 9和WatchOS 2上的NSUserDefaults(suiteName :) – 不工作?

我以前做过,但似乎没有任何工作。 这是我的代码: 保存在iOS应用程序中 let groupDefaults = NSUserDefaults(suiteName: "group.company.appSharedDefaults") groupDefaults?.setObject(theArray, forKey: "theKey") groupDefaults?.synchronize() 阅读(适用于iOS,但不适用于WatchOS 2) let groupDefaults = NSUserDefaults(suiteName: "group.company.appSharedDefaults") if groupDefaults!.objectForKey("theKey") != nil { textEmojiArray = NSMutableArray(array: groupDefaults!.objectForKey("theKey") as! NSArray) } else { //error } 这两个.entitlements文件都包含group.company.appSharedDefaults 应用程序组function已打开,并在两个目标上都检查了适当的组。 现在,当我在手表上运行读取代码时,objectForKey返回nil,但它在iOS上可用(设备和模拟器结果相同)。 我错过了什么!