0

无法在 for 循环中添加多个 url。怎么可能。如果我可以使用没有循环的单个 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];

    }
4

1 回答 1

1

您似乎正在尝试显示本地照片。为此,您将需要在下面使用。

[photos addObject:[MWPhoto photoWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"photo2l" ofType:@"jpg"]]]];

参考


编辑 1

根据您的新更新,您正在使用在线图像。使用下面的代码。

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];
于 2015-09-08T06:01:10.197 回答