iPhone 용 응용 프로그램을 만들고 있으며 사진 라이브러리에서 이미지를 다중 선택하는 기능을 제공하고자합니다. 한 번에 네 개의 이미지를 선택하는 작업 코드가 이미 있습니다.iOS에서 다중 선택 이미지를 표시하는 방법
하지만 한 번에 1 또는 2 또는 3 개의 이미지를 선택할 수 없습니다. 한 번에 1 또는 2 또는 3 개의 이미지를 선택하고 싶습니다.
이것은 내 코드입니다. 나는 해결책을 찾지 못한 채 3 일 동안 고생했다. 아무나 도와주세요. 사전에
감사합니다 .............
-(void)choosePhotoFromExistingImages
{
ELCImagePickerController *elcPicker = [[ELCImagePickerController alloc] initImagePicker];
elcPicker.maximumImagesCount = 4;
elcPicker.returnsOriginalImage = NO; //Only return the fullScreenImage, not the fullResolutionImage
elcPicker.imagePickerDelegate = self;
[self presentViewController:elcPicker animated:YES completion:nil];
}
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
[self.navigationController dismissViewControllerAnimated: YES completion: nil];
}
- (void)displayPickerForGroup:(ALAssetsGroup *)group
{
ELCAssetTablePicker *tablePicker = [[ELCAssetTablePicker alloc] initWithStyle:UITableViewStylePlain];
tablePicker.singleSelection = YES;
tablePicker.immediateReturn = YES;
ELCImagePickerController *elcPicker = [[ELCImagePickerController alloc] initWithRootViewController:tablePicker];
elcPicker.maximumImagesCount = 0;
elcPicker.imagePickerDelegate = self;
elcPicker.returnsOriginalImage = NO; //Only return the fullScreenImage, not the fullResolutionImage
tablePicker.parent = elcPicker;
// Move me
tablePicker.assetGroup = group;
[tablePicker.assetGroup setAssetsFilter:[ALAssetsFilter allAssets]];
[self presentViewController:elcPicker animated:YES completion:nil];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
{
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
return YES;
}
else
{
return toInterfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
}
}
#pragma mark ELCImagePickerControllerDelegate Methods
- (void)elcImagePickerController:(ELCImagePickerController *)picker didFinishPickingMediaWithInfo:(NSArray *)info
{
[self dismissViewControllerAnimated:YES completion:nil];
CGRect workingFrame = _scrollView.frame;
workingFrame.origin.x = 0;
NSMutableArray *images = [NSMutableArray arrayWithCapacity:[info count]];
for (NSDictionary *dict in info)
{
UIImage *image = [dict objectForKey:UIImagePickerControllerOriginalImage];
[images addObject:image];
UIImageView *imageview = [[UIImageView alloc] initWithImage:image];
[imageview setContentMode:UIViewContentModeScaleAspectFit];
imageview.frame = workingFrame;
[self.view addSubview:imageview ];
self.chosenImages = images;
}
UIImageView *image1=[[UIImageView alloc]initWithFrame:CGRectMake(10, 240, 40, 40)];
image1.image=[images objectAtIndex:0];
[self.view addSubview:image1];
UIImageView *image2=[[UIImageView alloc]initWithFrame:CGRectMake(60, 240, 40, 40)];
image2.image=[images objectAtIndex:1];
[self.view addSubview:image2];
UIImageView *image3=[[UIImageView alloc]initWithFrame:CGRectMake(120, 240, 40, 40)];
image3.image=[images objectAtIndex:2];
[self.view addSubview:image3];
UIImageView *image4=[[UIImageView alloc]initWithFrame:CGRectMake(180, 240, 40, 40)];
image4.image=[images objectAtIndex:3];
[self.view addSubview:image4];
}
- (void)elcImagePickerControllerDidCancel:(ELCImagePickerController *)picker
{
[self dismissViewControllerAnimated:YES completion:nil];
}
[ELCImagePickerController repo] (https://github.com/B-Sides/ELCImagePickerController)에서 데모를 시도 했습니까? 그것은 나를 위해 실행되며 * maximumImagesCount * 아래에서 원하는만큼 선택할 수 있습니다. –
@AntonGaenko 귀하의 응답을 주셔서 감사합니다. 나는 또한 ELCImagePickerController.If 나는 그것을 표시됩니다 4 이미지를 클릭합니다.하지만 2 또는 3 또는 1 이미지를 클릭하면 나는 display.I will not will getl 얻을 것이다 2 이미지를 선택합니다. "NSRangeException '이유,'*** - [__ NSArrayM objectAtIndex :] : 경계 3을 넘어서서 인덱스 3을 종료합니다."제발 도와주세요. 거의 2 일 동안 공격당했습니다. – user3222991
maximumImagesCount를 더 낮은 값으로 설정해 보셨습니까? – Divya