我需要在CameraSessionView之間傳回一張NSMutableArray的照片;如何將從攝像頭拍攝的照片存儲在NSMutableArray中,以及如何將這些照片上傳到DropBox中的TableViewController。我使用委託和協議,但我嘗試過的所有方式都失敗了。 任何人都可以幫助我。我認爲我做錯了一些小事情。 我告訴你一些代碼:在ObjectiveC上的代理之間傳回信息
CameraSessionView.h
@class CameraSessionView;
@protocol CameraSessionViewDelegate <NSObject>
@optional
-(void)uploadPhotosFromCamera:(NSMutableArray*)photos;
@end
@property (nonatomic, weak) id <CameraSessionViewDelegate> delegado;
CameraSessionView.m
@property (nonatomic, strong) NSMutableArray* images;
- (void)onTapOkButton{
NSLog(@"Save photos");
if([self.delegado respondsToSelector:@selector(uploadPhotosFromCamera:)])
[self.delegado uploadPhotosFromCamera:_images];
[self onTapDismissButton];
}
PhotosTableViewController.h
@interface PhotosTableViewController : UITableViewController <CameraSessionViewDelegate>
PhotosTableViewController.m
@property (nonatomic, strong) CameraSessionView *camera;
- (void)viewDidLoad
{
_camera = [CameraSessionView new];
[_camera setDelegado:self];
}
-(void)uploadPhotosFromCamera:(NSMutableArray*)photos
{
NSLog(@"UPFC");
for(int x=0; x < [photos count];x++)
{
NSLog(@"UPFC...");
UIImage *foto = [photos objectAtIndex:x];
if (foto.size.height > 1000 || foto.size.width > 1000)
foto = [self imageWithImage:foto scaledToScale:0.15f];
DBMetadata* datos = [TablaSubidas addFile:pathElemento];
NSFileManager *fileManager = [NSFileManager defaultManager];
NSData *data = UIImageJPEGRepresentation(foto, 1.0);
[fileManager createFileAtPath:[self photoPath:datos] contents:data attributes:nil];
[elementosTabla insertObject:datos atIndex:0];
}
[self sincFotos];
[self.tableView reloadData];
}
只希望當我按下OK按鈕時,照片將發送回PhotosTableViewController,並將其上傳到Dropbox。
onTapOKButton上的self.delegado始終爲零。
看起來很容易,但我無法運行它。 我很感激,如果任何人都可以幫助我或推薦我任何教程...
謝謝!
您還沒有PhotosTableViewContoller實施 - (空)uploadPhotosFromCamera:(NSMutableArray的*)照片; 我覺得這幾乎是缺少的東西。 – dirtydanee