测试已测试 | ✗ |
Lang语言 | Obj-CObjective C |
许可证 | MIT |
发布最后发布 | 2014年12月 |
由Roman Efimov维护。
首先,需要在示例项目中使用 CocoaPods 软件包管理器安装依赖项
$ pod install
之后,在 Xcode 中构建和运行 REPhotoCollectionControllerExample
项目,以查看 REPhotoCollectionController
的实际功能。
如果没有安装 CocoaPods,请查看下面的 "安装" 部分。
推荐通过 CocoaPods 软件包管理器安装 REPhotoCollectionController,因为它提供了灵活的依赖关系管理和简单易用的安装方式。
如果尚未安装 CocoaPods,请安装它
$ [sudo] gem install cocoapods
$ pod setup
编辑您的 Podfile 并添加 REPhotoCollectionController
$ edit Podfile
platform :ios, '5.0'
pod 'REActivityViewController', '~> 1.0'
将 REPhotoCollectionController 安装到您的 Xcode 项目中
$ pod install
将 #include "REPhotoCollectionController.h"
添加到使用 REPhotoCollectionController 的类的顶部
要使用 REPhotoCollectionController
,请将源代码复制到您的项目中,然后向数据源类添加照片对象。以下是方法:
@protocol REPhotoObjectProtocol <NSObject>
@property (nonatomic, strong) NSDate *date;
@optional
@property (nonatomic, strong) NSURL *thumbnailURL;
@property (nonatomic, strong) UIImage *thumbnail;
- (id)initWithThumbnailURL:(NSURL *)thumbnailURL date:(NSDate *)date;
@end
#import "ThumbnailView.h"
@implementation ThumbnailView
- (void)setPhoto:(NSObject <REPhotoObjectProtocol> *)photo
{
if (photo.thumbnailURL) {
imageButton.imageURL = photo.thumbnailURL;
} else {
[imageButton setImage:photo.thumbnail forState:UIControlStateNormal];
}
}
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
imageButton = [[EGOImageButton alloc] initWithPlaceholderImage:[UIImage imageNamed:@""]];
imageButton.frame = CGRectMake(1, 1, self.frame.size.width - 2, self.frame.size.height - 2);
[self addSubview:imageButton];
}
return self;
}
@end
NSMutableArray *datasource = [[NSMutableArray alloc] init];
Photo *photo = [[Photo alloc] init];
photo.thumbnail = [UIImage imageName:@"testimage"]; // Set photo here
photo.date = [NSDate date]; // Set date here
[datasource addObject:photo];
REPhotoCollectionController *photoCollectionController = [[REPhotoCollectionController alloc] initWithDatasource:datasource];
photoCollectionController.title = @"Photos";
// Use custom thumbnail view class
photoCollectionController.thumbnailViewClass = [ThumbnailView class];
[self.navigationController pushViewController:photoCollectionController animated:YES];
reloadData
来刷新数据源,当您添加更多照片对象时。Roman Efimov
REPhotoCollectionController 可在 MIT 许可证下使用。
版权所有 © 2013 Roman Efimov。
本授权允许任何获得本软件及其相关文档(统称为“软件”)副本的人在不限制使用的前提下自由处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许向软件提供者提供这样做的人,但必须遵守以下条件
上述版权声明和本许可声明应包含在软件的所有副本或实质部分中。
软件按“原样”提供,不提供任何形式的保证,无论是明示的、暗示的,还是关于商业性、适用于特定目的和/或不侵犯第三方知识产权的保证。在任何情况下,作者或版权持有者都不会因为因软件本身、使用或以其他方式进行处理的软件而产生的索赔、损害或其他责任承担责任,无论这种责任是基于合同、侵权或其他原因。