对于想了解objective-c–PHPhotoLibrary保存gif数据的读者,本文将是一篇不可错过的文章,我们将详细介绍php动图怎么保存,并且为您提供关于ios–是否有编译为Objective
对于想了解objective-c – PHPhotoLibrary保存gif数据的读者,本文将是一篇不可错过的文章,我们将详细介绍php动图怎么保存,并且为您提供关于ios – 是否有编译为Objective-C或与Objective-C二进制兼容的语言 – > Objective-C的Coffeescript、ios – 未能使用PHPhotoLibrary将UIImage保存到相机胶卷、iphone – Objective-C:何时调用self.myObject vs只调用myObject、iphone – 我需要释放一个复制的NSObjects – Objective-c的有价值信息。
本文目录一览:- objective-c – PHPhotoLibrary保存gif数据(php动图怎么保存)
- ios – 是否有编译为Objective-C或与Objective-C二进制兼容的语言 – > Objective-C的Coffeescript
- ios – 未能使用PHPhotoLibrary将UIImage保存到相机胶卷
- iphone – Objective-C:何时调用self.myObject vs只调用myObject
- iphone – 我需要释放一个复制的NSObjects – Objective-c
objective-c – PHPhotoLibrary保存gif数据(php动图怎么保存)
[[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{ PHAssetChangeRequest *assetRequest = [PHAssetChangeRequest creationRequestForAssetFromImage:[UIImage imageWithData:gifdata]]; placeholder = [assetRequest placeholderForCreatedAsset]; photosAsset = [PHAsset fetchAssetsInAssetCollection:collection options:nil]; PHAssetCollectionChangeRequest *albumChangeRequest = [PHAssetCollectionChangeRequest changeRequestForAssetCollection:collection assets:photosAsset]; [albumChangeRequest addAssets:@[placeholder]]; } completionHandler:^(BOOL success,NSError *error) { if (success) { } else { NSLog(@"%@",error); } }];
解决方法
PHAssetCreationRequestmethod [[PHAssetCreationRequest creationRequestForAsset] addResourceWithType:PHAssetResourceTypePhoto data:data options:options];保存这个gif图像数据,所以你也可以使用url请求来保存gif
代码如下:
Nsstring *path = [[NSBundle mainBundle] pathForResource:@"1" ofType:@"gif"]; NSData *data = [NSData dataWithContentsOfFile:path]; [[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{ PHAssetResourceCreationoptions *options = [[PHAssetResourceCreationoptions alloc] init]; [[PHAssetCreationRequest creationRequestForAsset] addResourceWithType:PHAssetResourceTypePhoto data:data options:options]; } completionHandler:^(BOOL success,NSError * _Nullable error) { NSLog(@":%d",success); }];
ios – 是否有编译为Objective-C或与Objective-C二进制兼容的语言 – > Objective-C的Coffeescript
我发现它的概念非常有趣.它似乎主要是语法糖,看起来很可读.
虽然它不直接编译到Objective-C,但它声称生成与Objective-C相同的二进制代码
Eero compiles down to the same binary code as Objective-C
Eero offers excellent,nearly seamless interoperability with
Objective-C,C,and C++.
我发现这种方法非常有趣,我想知道是否有类似的编程语言和项目提供与Objective-C和iOS的大腿集成.
我正在为Objective-C寻找类似Coffeescript的东西.
解决方法
它确实需要记录在一个更明显的地方……
ios – 未能使用PHPhotoLibrary将UIImage保存到相机胶卷
Apple不推荐使用UIImageWritetoSavedPhotosAlbum,因此我避免使用它(对于ALAssets也是如此),它强制使用PhotoLibrary.
这是我正在使用的代码:
定义:
var rollCollection : PHAssetCollection!;
初始化:
let result = PHAssetCollection.fetchAssetCollectionsWithType(.SmartAlbum,subtype: .SmartAlbumUserLibrary,options: nil); rollCollection = result.firstObject as? PHAssetCollection;
保存图片的代码:
if (rollCollection != nil){ PHPhotoLibrary.sharedPhotoLibrary().performChanges({ let assetRequest = PHAssetChangeRequest.creationRequestForAssetFromImage( self.originalImg!); let albumChangeRequest = PHAssetCollectionChangeRequest(forAssetCollection: self.rollCollection!); let assetPlaceHolder = assetRequest.placeholderForCreatedAsset; albumChangeRequest!.addAssets([assetPlaceHolder!]) },completionHandler: { success,error in dispatch_async(dispatch_get_main_queue(),{ print ("\(error!)"); if (!success){ self.presentViewController(self.alertCantSave!,animated: false,completion: nil); } else { self.presentViewController(self.alertSaved!,completion: nil); } }); }) } else { dispatch_async(dispatch_get_main_queue(),{ self.presentViewController(self.alertCantSave!,completion: nil); }); }
每次我尝试保存图像时,都会出现以下错误:
Error Domain=NSCocoaErrorDomain Code=-1 "(null)"
有任何想法吗?
我找不到任何解释,在我找到的任何地方,我都找到了类似于我的代码片段(包括Apple的文档:https://developer.apple.com/library/ios/documentation/Photos/Reference/PHPhotoLibrary_Class/)
谢谢.
解决方法
玩了一下我能够得到一个对我有用的答案,所以我在这里分享它,以防万一其他人在将来寻找类似的东西.
// Make sure the image is not nil guard let image = image else { // No image here... return } // Perform changes to the library PHPhotoLibrary.sharedPhotoLibrary().performChanges({ // You only need to create the request,there is no need to define the placeholder // nor to add the asset because swift does not like it when you try to modify the camera roll. PHAssetChangeRequest.creationRequestForAssetFromImage(image) },error in // Same as what you have... })
如果您想要一个如何将图像保存到自定义相册并从自定义相册查询图像的示例,请查看此答案. Save images with PHImageManager
iphone – Objective-C:何时调用self.myObject vs只调用myObject
什么时候应该调用self.myObject vs只调用myObject?
这似乎是多余的,但它们不可互换.
有人请赐教吗?
解决方法
myObject = anotherObject; self.myObject = anotherObject;
第二个选择将确保您实际上按照您想要的方式分配对象(获取副本,增加保留计数等).它与[self setMyObject:anotherObject]没有什么不同.
由于点符号被编译器替换为消息(类似于x [5]在常规数组工作中变为*(x 5 * sizeof(x))),因此使用点符号时没有开销或额外的效率常规消息.
iphone – 我需要释放一个复制的NSObjects – Objective-c
码:
for (int num = 0; num < [object count]; num++) { [dictionary setobject:[object objectAtIndex:num] forKey:@"x"]; [array addobject:[dictionary copy]]; }
我必须释放字典吗?如果是,什么时候?
谢谢
解决方法
NSDictionary *copied = [dictionary copy]; [array addobject:copied]; [copied release];
今天的关于objective-c – PHPhotoLibrary保存gif数据和php动图怎么保存的分享已经结束,谢谢您的关注,如果想了解更多关于ios – 是否有编译为Objective-C或与Objective-C二进制兼容的语言 – > Objective-C的Coffeescript、ios – 未能使用PHPhotoLibrary将UIImage保存到相机胶卷、iphone – Objective-C:何时调用self.myObject vs只调用myObject、iphone – 我需要释放一个复制的NSObjects – Objective-c的相关知识,请在本站进行查询。
本文标签: