アプリケーションには、ユーザーがカムから複数の写真を撮ることができる機能があります。これらの写真はすべて NSMuteArray オブジェクトに追加され、ユーザーが保存ボタンをクリックするとサーバーに送信されます。
現在、このプロセスは機能しておらず、ユーザーが保存をクリックするたびにアプリケーションがクラッシュします。以下のコードを使用して要素 NSMuteArray を追加しています
UIImage *img=[info objectForKey:UIImagePickerControllerOriginalImage];
self.picData=UIImageJPEGRepresentation([[self scaleAndRotateImage:img] fixOrientation], 1.0);
[self.addPhotosBtn setImage:[UIImage imageWithData:self.picData] forState:UIControlStateNormal];
[self.addPhotosBtn setImage:[UIImage imageWithData:self.picData] forState:UIControlStateHighlighted];
[self.addPhotosBtn setImage:[UIImage imageWithData:self.picData] forState:UIControlStateHighlighted];
NSString *ImgData =[[NSString alloc] initWithData:self.picData encoding:NSUTF8StringEncoding];
if (appDelegate.selectedPhotos) {
[self.selectedPhotos addObject:self.picData];
[appDelegate.selectedPhotos addObject:self.picData];
}else{
appDelegate.selectedPhotos=[NSMutableArray arrayWithCapacity:0];
self.selectedPhotos=[NSMutableArray arrayWithCapacity:0];
}
また、保存中に使用するコードは次のとおりです。
NSDateFormatter *df1=[[NSDateFormatter alloc]init];
[df1 setDateFormat:@"MMMM dd, yyyy"];
NSDate *dd=[df1 dateFromString:self.date.text];
[df1 setDateFormat:@"yyyy-MM-dd"];
NSDictionary *data=[NSDictionary dictionaryWithObjectsAndKeys:
//appDelegate.selectedPhotos,@"photos",
[appDelegate.allcatches objectForKey:@"catches"],@"allcatches",
[appDelegate.selectedPlace objectForKey:@"id"],@"currentplace",
[df1 stringFromDate:dd ],@"currentdate",
[self.description.text isEqualToString:@""] ? @"NULL" : self.description.text,@"description",
self.fbBtn.selected ? @"Y":@"N",@"facebookshare",
self.twBtn.selected ? @"Y":@"N",@"twittershare",
appDelegate.selectedPhotos,@"photos",
nil];
[appDelegate performSelectorInBackground:@selector(uploadPostDataToServer:) withObject:data];
誰かがこれを修正するのを手伝ってくれますか?