国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

iOS仿微博圖片瀏覽器

2020-07-26 03:03:44
字體:
來源:轉載
供稿:網友

KNPhotoBrower
高仿微博圖片瀏覽器


PhotoBrower.gif

一.功能描述及要點
1.加載網絡九宮格圖片,collectionView,scrollView
2.SDWebImage下載圖片,KNProgressHUD顯示加載進度
3.高仿微博,顯示動畫,KNToast提示

二.方法調用

1.創建KNPhotoBrower,并傳入相應的參數

// 每一個圖片控件對象, 對一一對應 KNPhotoItems ,再將多個KNPhotoItems 對象放入數組KNPhotoItems *items = [[KNPhotoItems alloc] init];items.url = [urlArr[i] stringByReplacingOccurrencesOfString:@"thumbnail" withString:@"bmiddle"];items.sourceView = imageView;KNPhotoBrower *photoBrower = [[KNPhotoBrower alloc] init];photoBrower.itemsArr = [_itemsArray copy];// KNPhotoItems對象的數組photoBrower.currentIndex = tap.view.tag;// 當前點擊的哪個圖片photoBrower.actionSheetArr = [self.actionSheetArray mutableCopy];//設置 ActionSheet的選項[photoBrower present];// 顯示

2.提供代理方法 --> KNPhotoBrowerDelegate

/* PhotoBrower 即將消失 */- (void)photoBrowerWillDismiss;/* PhotoBrower 右上角按鈕的點擊 */- (void)photoBrowerRightOperationActionWithIndex:(NSInteger)index;/* PhotoBrower 保存圖片是否成功 */- (void)photoBrowerWriteToSavedPhotosAlbumStatus:(BOOL)success;

3.提供 消失方法
[_photoBrower dismiss];
4.設置 參數

/** * 是否需要右上角的按鈕. Default is YES; */@property (nonatomic, assign) BOOL isNeedRightTopBtn;/** * 是否需要 頂部 1 / 9 控件 ,Default is YES */@property (nonatomic, assign) BOOL isNeedPageNumView;/** * 是否需要 底部 UIPageControl, Default is NO */@property (nonatomic, assign) BOOL isNeedPageControl;/** * 存放 ActionSheet 彈出框的內容 :NSString類型 */@property (nonatomic, strong) NSMutableArray *actionSheetArr;

5.關于彈出框的內容,可在KNPhotoBrower.m 的operationBtnIBAction 方法中增減

#pragma mark - 右上角 按鈕的點擊- (void)operationBtnIBAction{ __weak typeof(self) weakSelf = self; if(_actionSheetArr.count != 0){ // 如果是自定義的 選項  KNActionSheet *actionSheet = [[KNActionSheet alloc] initWithCancelBtnTitle:nil destructiveButtonTitle:nil otherBtnTitlesArr:[_actionSheetArr copy] actionBlock:^(NSInteger buttonIndex) {   // 讓代理知道 是哪個按鈕被點擊了   if([weakSelf.delegate respondsToSelector:@selector(photoBrowerRightOperationActionWithIndex:)]){    [weakSelf.delegate photoBrowerRightOperationActionWithIndex:buttonIndex];   }#warning 如果傳入的 ActionSheetArr 有下載圖片這一選項. 則在這里調用和下面一樣的方法 switch.....,如果沒有下載圖片,則通過代理方法去實現... 目前不支持刪除功能  }];  [actionSheet show]; }else{  KNActionSheet *actionSheet = [[KNActionSheet alloc] initWithCancelBtnTitle:nil destructiveButtonTitle:nil otherBtnTitlesArr:@[@"保存圖片",@"轉發微博",@"贊"] actionBlock:^(NSInteger buttonIndex) {   // 讓代理知道 是哪個按鈕被點擊了   if([weakSelf.delegate respondsToSelector:@selector(photoBrowerRightOperationActionWithIndex:)]){    [weakSelf.delegate photoBrowerRightOperationActionWithIndex:buttonIndex];   }   switch (buttonIndex) {    case 0:{     SDWebImageManager *mgr = [SDWebImageManager sharedManager];     KNPhotoItems *items = _itemsArr[_currentIndex];     if(![mgr diskImageExistsForURL:[NSURL URLWithString:items.url]]){      [[KNToast shareToast] initWithText:@"圖片需要下載完成"];      return ;     }else{      UIImage *image = [[mgr imageCache] imageFromDiskCacheForKey:items.url];      dispatch_async(dispatch_get_main_queue(), ^{       UIImageWriteToSavedPhotosAlbum(image, self, @selector(image:didFinishSavingWithError:contextInfo:), NULL);      });     }    }    default:     break;   }  }];  [actionSheet show]; }}

補充
1.目前適合 九宮格樣式,collectionView,scrollView
2.如果有bug, 請在Github上通過 '郵箱' 或者 直接issue ,我會盡快修改
github地址:  https://github.com/LuKane/KNPhotoBrower

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 塔河县| 申扎县| 塔城市| 鹿邑县| 凌源市| 射洪县| 冷水江市| 滦平县| 新丰县| 岳普湖县| 中江县| 麻栗坡县| 襄垣县| 沛县| 阿图什市| 汨罗市| 东海县| 绥滨县| 尉犁县| 额济纳旗| 察哈| 胶南市| 喀喇沁旗| 临沂市| 桃园县| 贵溪市| 衡阳县| 田阳县| 调兵山市| 多伦县| 视频| 灵石县| 峨眉山市| 广元市| 太谷县| 蒙阴县| 龙南县| 湖南省| 绵竹市| 海阳市| 修水县|