首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在iOS上实现照片在SQLite数据库中的存储

如何在iOS上实现照片在SQLite数据库中的存储
EN

Stack Overflow用户
提问于 2011-05-31 18:28:27
回答 3查看 5.8K关注 0票数 1

我有一个相机应用程序,当我点击相机按钮时,相机打开,用户可以从相机或照片库中拍照。

我已经完成了相机部分,当用户单击按钮时,相机打开,他可以拍照。问题是用户从相机拍摄的照片必须保存到SQLite数据库中。我被困在这一部分了。有人能帮我保存相机拍摄的图像吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-05-31 18:46:12

如果您使用的是UIImagePickerController,则可以在其imagePickerController:didFinishPickingMediaWithInfo:委托方法中获取图像。您得到的图像是一个UIImage对象。

代码语言:javascript
复制
UIImage *image = [info objectForKey:UIImagePickerControllerEditedImage];
NSData *data = UIImageJPEGRepresentation(image, 1.0);

现在NSData有一个返回void*的方法bytes。这将指向一个C类型的数组,它可以很好地与SQLite配合使用。

票数 3
EN

Stack Overflow用户

发布于 2011-05-31 18:55:34

您可以在数据库中创建blob类型的数据字段,然后将字节数据保存到该列中。但是,将图像保存在数据库中是一种糟糕的做法。相反,您可以将图像保存在文档目录中,除非非常有必要将图像保存在数据库中。

票数 2
EN

Stack Overflow用户

发布于 2011-05-31 18:48:12

现在,当您打开相机时,您将实现以下方法

代码语言:javascript
复制
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)img editingInfo:(NSDictionary *)editInfo {

[[picker parentViewController] dismissModalViewControllerAnimated:YES];
}

在上面的方法中添加以下代码:--

代码语言:javascript
复制
NSData *imageData = UIImageJPEGRepresentation(img, 1);

然后调用将数据保存到数据库的方法。

确保在数据库中将字段类型作为blob。

希望它能帮上忙……

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6186224

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档