【发布时间】:2015-03-09 05:46:41
【问题描述】:
在 .m 中编码
-(IBAction) getPhoto:(id) sender {
picker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
} else {
if (![UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
UIAlertView *noCameraAlert = [[UIAlertView alloc] initWithTitle:@"Error"
message:@"You don't have a camera for this device" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
//shows above alert if there's no camera
[noCameraAlert show];
}else{
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
picker.allowsEditing = YES;
picker.delegate = self;
}
}
[self presentViewController:picker animated:YES completion:nil];
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
UIImage *img = [info objectForKey:UIImagePickerControllerOriginalImage];
img = [info valueForKey:UIImagePickerControllerEditedImage];
self.imageView.image = img;
imagData = UIImagePNGRepresentation(img);
[picker dismissViewControllerAnimated:YES completion:nil];
}
图像现在放置在图像视图中,我如何将图像保存在数据库中
我已经有数据库来插入数据 插入:
NSMutableArray *listItemsarr = [[NSMutableArray alloc] init];
if([listItemsarr count]==0){
NSString *insertQry=@"INSERT INTO selection_tbl (expenses_value,category,date,payment,description) VALUES(?,?,?,?,?)";
sqlite3_stmt *stmt=[DB OpenSQL:[insertQry UTF8String]];
if(stmt !=nil)
{
sqlite3_bind_text(stmt,1, [dataTextfield.text UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(stmt,2, [[selectionarray objectAtIndex:0] UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(stmt,3, [[selectionarray objectAtIndex:1] UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(stmt,4, [[selectionarray objectAtIndex:2] UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(stmt,5, [[selectionarray objectAtIndex:3] UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_step(stmt);
}
sqlite3_finalize(stmt);
[DB CloseSQL];
以下编码用于更新数据库值 更新:
NSInteger proeditid = [primarykeyID integerValue];
NSString *updateQry=@"update selection_tbl set expenses_value=?,category=?,date=?,payment=?,description=? where expenses_id=?";
sqlite3_stmt *stmt=[DB OpenSQL:[updateQry UTF8String]];
if(stmt !=nil)
{
sqlite3_bind_text(stmt,1, [dataTextfield.text UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(stmt,2, [[selectionarray objectAtIndex:0] UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(stmt,3, [[selectionarray objectAtIndex:1] UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(stmt,4, [[selectionarray objectAtIndex:2] UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(stmt,5, [[selectionarray objectAtIndex:3] UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_int(stmt,6, (int)proeditid);
sqlite3_step(stmt);
}
sqlite3_finalize(stmt);
[DB CloseSQL];
【问题讨论】:
-
但是你能告诉我如何将 UIImagePickerControllerSourceTypeCamera 拍摄的图像单独添加到数据库中吗?
-
顺便说一下,正确使用
sqlite3_bind_xxx函数的三个快照。很多人错误地使用stringWithFormat来构建他们的SQL,所以很高兴看到有人正确地将值绑定到?占位符。干得好。
标签: ios objective-c xcode uiimage uiimagepickercontroller