第三方下載
// 初始化
- (void)setup
{
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"發(fā)布" style:UIBarButtonItemStyleDone target:self action:@selector(publishDidCicked)];
self.title = @"示例控制器";
}
- (void)viewDidLoad {
[super viewDidLoad];
// 初始化
[self setup];
// 1. 創(chuàng)建圖片鏈接數(shù)組
NSMutableArray *thumbnailImageUrls = [NSMutableArray array];
// 添加圖片(縮略圖)鏈接
[thumbnailImageUrls addObject:@"http://ww3.sinaimg.cn/thumbnail/006ka0Iygw1f6bqm7zukpj30g60kzdi2.jpg"];
[thumbnailImageUrls addObject:@"http://ww1.sinaimg.cn/thumbnail/61b69811gw1f6bqb1bfd2j20b4095dfy.jpg"];
[thumbnailImageUrls addObject:@"http://ww1.sinaimg.cn/thumbnail/54477ddfgw1f6bqkbanqoj20ku0rsn4d.jpg"];
[thumbnailImageUrls addObject:@"http://ww4.sinaimg.cn/thumbnail/006ka0Iygw1f6b8gpwr2tj30bc0bqmyz.jpg"];
[thumbnailImageUrls addObject:@"http://ww2.sinaimg.cn/thumbnail/9c2b5f31jw1f6bqtinmpyj20dw0ae76e.jpg"];
[thumbnailImageUrls addObject:@"http://ww1.sinaimg.cn/thumbnail/536e7093jw1f6bqdj3lpjj20va134ana.jpg"];
[thumbnailImageUrls addObject:@"http://ww1.sinaimg.cn/thumbnail/75b1a75fjw1f6bqn35ij6j20ck0g8jtf.jpg"];
[thumbnailImageUrls addObject:@"http://ww4.sinaimg.cn/bmiddle/406ef017jw1ec40av2nscj20ip4p0b29.jpg"];
[thumbnailImageUrls addObject:@"http://ww1.sinaimg.cn/thumbnail/86afb21egw1f6bq3lq0itj20gg0c2myt.jpg"];
// 1.2 創(chuàng)建圖片原圖鏈接數(shù)組
NSMutableArray *originalImageUrls = [NSMutableArray array];
// 添加圖片(原圖)鏈接
[originalImageUrls addObject:@"http://ww3.sinaimg.cn/large/006ka0Iygw1f6bqm7zukpj30g60kzdi2.jpg"];
[originalImageUrls addObject:@"http://ww1.sinaimg.cn/large/61b69811gw1f6bqb1bfd2j20b4095dfy.jpg"];
[originalImageUrls addObject:@"http://ww1.sinaimg.cn/large/54477ddfgw1f6bqkbanqoj20ku0rsn4d.jpg"];
[originalImageUrls addObject:@"http://ww4.sinaimg.cn/large/006ka0Iygw1f6b8gpwr2tj30bc0bqmyz.jpg"];
[originalImageUrls addObject:@"http://ww2.sinaimg.cn/large/9c2b5f31jw1f6bqtinmpyj20dw0ae76e.jpg"];
[originalImageUrls addObject:@"http://ww1.sinaimg.cn/large/536e7093jw1f6bqdj3lpjj20va134ana.jpg"];
[originalImageUrls addObject:@"http://ww1.sinaimg.cn/large/75b1a75fjw1f6bqn35ij6j20ck0g8jtf.jpg"];
[originalImageUrls addObject:@"http://ww4.sinaimg.cn/bmiddle/406ef017jw1ec40av2nscj20ip4p0b29.jpg"];
[originalImageUrls addObject:@"http://ww1.sinaimg.cn/large/86afb21egw1f6bq3lq0itj20gg0c2myt.jpg"];
// 2.1 創(chuàng)建一個(gè)流水布局photosView(默認(rèn)為流水布局)
PYPhotosView *flowPhotosView = [PYPhotosView photosView];
// 設(shè)置縮略圖數(shù)組
flowPhotosView.thumbnailUrls = thumbnailImageUrls;
// 設(shè)置原圖地址
flowPhotosView.originalUrls = originalImageUrls;
flowPhotosView.replaceThumbnailWhenOriginalDownloaded = NO;
// 設(shè)置分頁(yè)指示類型
flowPhotosView.pageType = PYPhotosViewPageTypeLabel;
flowPhotosView.py_centerX = self.view.py_centerX;
flowPhotosView.py_y = 20 + 64;
// 2.2創(chuàng)建線性布局
PYPhotosView *linePhotosView = [PYPhotosView photosViewWithThumbnailUrls:thumbnailImageUrls originalUrls:originalImageUrls layoutType:PYPhotosViewLayoutTypeLine];
// 設(shè)置Frame
linePhotosView.py_y = CGRectGetMaxY(flowPhotosView.frame) + PYMargin * 2;
//設(shè)置frame
linePhotosView.py_x = PYMargin;
linePhotosView.py_width = self.view.py_width - linePhotosView.py_x * 2;
// 3. 添加到指定視圖中
[self.view addSubview:flowPhotosView];
[self.view addSubview:linePhotosView];
}
#pragma mark publishDidCicked
// 點(diǎn)擊發(fā)布時(shí)調(diào)用
- (void)publishDidCicked
{
PYPublishExampleViewController *publishVc = [[PYPublishExampleViewController alloc] init];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:publishVc];
[self presentViewController:nav animated:YES completion:nil];
}
@interface PYPublishExampleViewController () <PYPhotosViewDelegate>
/** 即將發(fā)布的圖片存儲(chǔ)的photosView */
@property (nonatomic, weak) PYPhotosView *publishPhotosView;
@end
@implementation PYPublishExampleViewController
- (void)viewDidLoad {
[super viewDidLoad];
// 初始化
[self setup];
// 1. 常見(jiàn)一個(gè)發(fā)布圖片時(shí)的photosView
PYPhotosView *publishPhotosView = [PYPhotosView photosView];
// 2. 添加本地圖片
NSMutableArray *imagesM = [NSMutableArray array];
for (int i = 0; i < arc4random_uniform(4) + 1; i++) {
UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"%02d", i + 1]];
if (image) {
[imagesM addObject:image];
}
}
publishPhotosView.py_x = PYMargin * 5;
publishPhotosView.py_y = PYMargin * 2 + 64;
// 2.1 設(shè)置本地圖片
publishPhotosView.images = imagesM;
// 3. 設(shè)置代理
publishPhotosView.delegate = self;
// 4. 添加photosView
[self.view addSubview:publishPhotosView];
self.publishPhotosView = publishPhotosView;
}
// 初始化
- (void)setup
{
self.view.backgroundColor = [UIColor whiteColor];
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"返回" style:UIBarButtonItemStyleDone target:self action:@selector(back)];
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"發(fā)送" style:UIBarButtonItemStyleDone target:self action:@selector(send)];
self.title = @"發(fā)布控制器";
}
// 點(diǎn)擊發(fā)送
- (void)send
{
NSLog(@"發(fā)送 --- 共有%zd張圖片", self.publishPhotosView.images.count);
}
// 點(diǎn)擊返回
- (void)back
{
[self dismissViewControllerAnimated:YES completion:nil];
}
#pragma mark - PYPhotosViewDelegate
- (void)photosView:(PYPhotosView *)photosView didAddImageClickedWithImages:(NSMutableArray *)images
{
NSLog(@"點(diǎn)擊了添加圖片按鈕 --- 添加前有%zd張圖片", images.count);
// 在這里做當(dāng)點(diǎn)擊添加圖片按鈕時(shí),你想做的事。
// 這里我利用導(dǎo)入的圖片,模擬從相冊(cè)選圖片或者拍照。(這里默認(rèn)最多導(dǎo)入9張,超過(guò)時(shí)取前九張)
for (int i = 0; i < arc4random_uniform(6) + 1; i++) {
UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"%02d", arc4random_uniform(9) + 1]];
if (image) {
[images addObject:image];
}
}
// 新增圖片鏈接支持
[images addObject:[NSString stringWithFormat:@"https://ws1.sinaimg.cn/large/610dc034ly1fjgfyxgwgnj20u00gvgmt.jpg"]];
// 刷新
[photosView reloadDataWithImages:images];
NSLog(@"添加圖片 --- 添加后有%zd張圖片", photosView.images.count);
}
// 進(jìn)入預(yù)覽圖片時(shí)調(diào)用, 可以在此獲得預(yù)覽控制器,實(shí)現(xiàn)對(duì)導(dǎo)航欄的自定義
- (void)photosView:(PYPhotosView *)photosView didPreviewImagesWithPreviewControlelr:(PYPhotosPreviewController *)previewControlelr
{
NSLog(@"進(jìn)入預(yù)覽圖片");
}
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。