MJPhotoBrowser的用法

来源:互联网 发布:脱北者 知乎 编辑:程序博客网 时间:2024/06/06 04:00
- (void)viewDidLoad{    [super viewDidLoad];    // 0.图片链接    _urls = @[@"http://ww4.sinaimg.cn/thumbnail/7f8c1087gw1e9g06pc68ug20ag05y4qq.gif", @"http://ww3.sinaimg.cn/thumbnail/8e88b0c1gw1e9lpr0nly5j20pf0gygo6.jpg", @"http://ww4.sinaimg.cn/thumbnail/8e88b0c1gw1e9lpr1d0vyj20pf0gytcj.jpg", @"http://ww3.sinaimg.cn/thumbnail/8e88b0c1gw1e9lpr1xydcj20gy0o9q6s.jpg", @"http://ww2.sinaimg.cn/thumbnail/8e88b0c1gw1e9lpr2n1jjj20gy0o9tcc.jpg", @"http://ww2.sinaimg.cn/thumbnail/8e88b0c1gw1e9lpr39ht9j20gy0o6q74.jpg", @"http://ww3.sinaimg.cn/thumbnail/8e88b0c1gw1e9lpr3xvtlj20gy0obadv.jpg", @"http://ww4.sinaimg.cn/thumbnail/8e88b0c1gw1e9lpr4nndfj20gy0o9q6i.jpg", @"http://ww3.sinaimg.cn/thumbnail/8e88b0c1gw1e9lpr57tn9j20gy0obn0f.jpg"];    // 1.创建9个UIImageView    UIImage *placeholder = [UIImage imageNamed:@"timeline_image_loading.png"];    CGFloat width = 70;    CGFloat height = 70;    CGFloat margin = 20;    CGFloat startX = (self.view.frame.size.width - 3 * width - 2 * margin) * 0.5;    CGFloat startY = 50;    for (int i = 0; i<9; i++) {        UIImageView *imageView = [[UIImageView alloc] init];        [self.view addSubview:imageView];        // 计算位置        int row = i/3;        int column = i%3;        CGFloat x = startX + column * (width + margin);        CGFloat y = startY + row * (height + margin);        imageView.frame = CGRectMake(x, y, width, height);        // 下载图片        [imageView setImageURLStr:_urls[i] placeholder:placeholder];        // 事件监听        imageView.tag = i;        imageView.userInteractionEnabled = YES;        [imageView addGestureRecognizer:[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapImage:)]];        // 内容模式        imageView.clipsToBounds = YES;        imageView.contentMode = UIViewContentModeScaleAspectFill;    }}- (void)tapImage:(UITapGestureRecognizer *)tap{    int count = _urls.count;    // 1.封装图片数据    NSMutableArray *photos = [NSMutableArray arrayWithCapacity:count];    for (int i = 0; i<count; i++) {        // 替换为中等尺寸图片        NSString *url = [_urls[i] stringByReplacingOccurrencesOfString:@"thumbnail" withString:@"bmiddle"];        MJPhoto *photo = [[MJPhoto alloc] init];        photo.url = [NSURL URLWithString:url]; // 图片路径        photo.srcImageView = self.view.subviews[i]; // 来源于哪个UIImageView        [photos addObject:photo];    }    // 2.显示相册    MJPhotoBrowser *browser = [[MJPhotoBrowser alloc] init];    browser.currentPhotoIndex = tap.view.tag; // 弹出相册时显示的第一张图片是?    browser.photos = photos; // 设置所有的图片    [browser show];}
1 0
原创粉丝点击