| | |
| | | #import "MJRefreshNormalHeader.h" |
| | | #import "MJRefreshAutoNormalFooter.h" |
| | | #import "HDLEZDevMsgListModel.h" |
| | | @interface HDLEZDeviceMsgListViewController () |
| | | #import "MWPhotoBrowser.h" |
| | | #import "SDWebImageManager.h" |
| | | #import <Photos/Photos.h> |
| | | @interface HDLEZDeviceMsgListViewController ()<MWPhotoBrowserDelegate> |
| | | @property (nonatomic, strong) HDLEZDeviceMsgListView *msgListV;//消息列表view |
| | | |
| | | @property (nonatomic, strong) MJRefreshNormalHeader *header;//刷新header |
| | |
| | | |
| | | @property (nonatomic, assign) NSInteger pageSize;//分页容量 |
| | | |
| | | @property (nonatomic, strong) NSMutableArray <MWPhoto *>*photos; // 预览图片信息 |
| | | |
| | | @end |
| | | |
| | | @implementation HDLEZDeviceMsgListViewController |
| | |
| | | make.top.equalTo(self.view).offset(HDLEZ_APP_TOP_BAR_HEIGHT); |
| | | make.left.bottom.right.equalTo(self.view); |
| | | }]; |
| | | // _msgListV.choseDelegate=self; |
| | | __weak __typeof(self)weakSelf = self; |
| | | [_msgListV previewPicture:^(NSString * _Nonnull pictureUrl) { |
| | | [weakSelf previewPictureWithUrl:pictureUrl]; |
| | | }]; |
| | | |
| | | //下拉刷新 |
| | | // 设置回调(一旦进入刷新状态,就调用target的action,也就是调用self的loadNewData方法) |
| | |
| | | }]; |
| | | } |
| | | |
| | | #pragma mark MWPhotoBrowserDelegate |
| | | - (NSUInteger)numberOfPhotosInPhotoBrowser:(MWPhotoBrowser *)photoBrowser { |
| | | return self.photos.count; |
| | | } |
| | | |
| | | - (id <MWPhoto>)photoBrowser:(MWPhotoBrowser *)photoBrowser photoAtIndex:(NSUInteger)index { |
| | | if (index < self.photos.count) { |
| | | return [self.photos objectAtIndex:index]; |
| | | } |
| | | return nil; |
| | | } |
| | | |
| | | - (void)didClickCurrentPhotoBrowserBlank:(MWPhotoBrowser *)photoBrowser { |
| | | [self.navigationController popToViewController:self animated:NO]; |
| | | } |
| | | |
| | | - (void)didClickDownLoad:(MWPhotoBrowser *)photoBrowser { |
| | | dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ |
| | | |
| | | NSURL *url = [NSURL URLWithString:@"https://upload-images.jianshu.io/upload_images/5809200-a99419bb94924e6d.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240"]; |
| | | SDWebImageManager *manager = [SDWebImageManager sharedManager]; |
| | | UIImage *img; |
| | | if ([manager diskImageExistsForURL:url]) { |
| | | img = [[manager imageCache] imageFromDiskCacheForKey:url.absoluteString]; |
| | | } else { |
| | | //从网络下载图片 |
| | | NSData *data = [NSData dataWithContentsOfURL:url]; |
| | | img = [UIImage imageWithData:data]; |
| | | } |
| | | // 保存图片到相册中 |
| | | dispatch_async(dispatch_get_main_queue(), ^{ |
| | | UIImageWriteToSavedPhotosAlbum(img,self, @selector(image:didFinishSavingWithError |
| | | :contextInfo:),nil); |
| | | }); |
| | | }); |
| | | } |
| | | |
| | | //保存图片完成之后的回调 |
| | | - (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error |
| | | contextInfo:(void *)contextInfo { |
| | | // Was there an error? |
| | | NSString *message = nil; |
| | | if (!error) { |
| | | message = NSLocalizedString(@"device_save_gallery", @"已保存至手机相册"); |
| | | } |
| | | else |
| | | { |
| | | message = [error description]; |
| | | } |
| | | [UIView dd_showMessage:message]; |
| | | } |
| | | |
| | | #pragma mark PrivateMethod |
| | | - (void)previewPictureWithUrl:(NSString *)picUrl { |
| | | self.photos = [NSMutableArray array]; |
| | | [self.photos addObject:[MWPhoto photoWithURL:[NSURL URLWithString:picUrl]]]; |
| | | MWPhotoBrowser *browser = [[MWPhotoBrowser alloc] initWithDelegate:self]; |
| | | [browser showDownloadBtn]; |
| | | |
| | | [self.navigationController pushViewController:browser animated:NO]; |
| | | } |
| | | |
| | | |
| | | @end |