无法在for循环中添加多个url。怎么可能。如果我可以使用没有循环的单个网址然后它的工作。但是没有使用多个url循环。 我怎么能解决这个问题 我试过下面的代码:
- (NSUInteger)numberOfPhotosInPhotoBrowser:(MWPhotoBrowser *)photoBrowser {
return _photos.count;
}
- (MWPhoto *)photoBrowser:(MWPhotoBrowser *)photoBrowser photoAtIndex:(NSUInteger)index {
if (index < _photos.count)
return [_photos objectAtIndex:index];
return nil;
}
- (void)viewDidLoad
{
[super viewDidLoad];
NSMutableArray *photos = [[NSMutableArray alloc] init];
photos=[[NSMutableArray alloc]initWithObjects:@"http://gloucesterstage.com/_website/wp-content/uploads/2015/06/apples2.jpg",@"http://www.apple.com/ipad/home/images/social/og.jpg?201508031746",nil];
MWPhoto *photo;
for (int i=0;i<[photos count];i++) {
photo = [MWPhoto photoWithURL:[NSURL URLWithString:photos[i]]];
photo.caption = @"";
[photos addObject:photo];
}
_photos = photos;
MWPhotoBrowser *browser = [[MWPhotoBrowser alloc] initWithDelegate:self];
UINavigationController *nc = [[UINavigationController alloc] initWithRootViewController:browser];
[browser showNextPhotoAnimated:YES];
[browser showPreviousPhotoAnimated:YES];
[self presentViewController:nc animated:YES completion:nil];
}
答案 0 :(得分:1)
您似乎正在尝试展示本地照片。为此,您需要在下面使用。
[photos addObject:[MWPhoto photoWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"photo2l" ofType:@"jpg"]]]];
根据您的新更新,您正在使用在线图片。使用以下代码。
NSMutableArray *photos = [[NSMutableArray alloc] init];
MWPhoto *photo;
NSMutableArray *anotherArrayWhereYouHaveImages=[[NSMutableArray alloc] initWithObjects:@"http://gloucesterstage.com/_website/wp-content/uploads/2015/06/apples2.jpg",@"http://www.apple.com/ipad/home/images/social/og.jpg?201508031746",nil];
for (int i=0;i<[anotherArrayWhereYouHaveImages count];i++) {
photo = [MWPhoto photoWithURL:[NSURL URLWithString:[anotherArrayWhereYouHaveImages objectAtIndex:i]]];
photo.caption = [NSString stringWithFormat:@"Photo %d", i];
[photos addObject:photo];
}
self.photos = photos;
// Create browser
MWPhotoBrowser *browser = [[MWPhotoBrowser alloc] initWithDelegate:self];
browser.displayActionButton = YES;
browser.displayNavArrows = YES;
browser.zoomPhotosToFill = NO;
browser.navigationController.navigationBarHidden = NO;
[browser setCurrentPhotoIndex:myPostForPhoto];
CATransition *transition = [CATransition animation];
transition.duration = 0.5;
transition.type = kCATransitionFade;
[self.navigationController.view.layer addAnimation:transition forKey:kCATransition];
[self.navigationController pushViewController:browser animated:NO];