先直接上完成后的效果如下:

2018-05-10 20_01_08.gif
具體的demo 詳見github地址:https://github.com/TianXin123654/TXCustomView
TXCustomView用法如下
1.朋友圈快速布局,此方法需要創(chuàng)建TXCustomView的大小,然后傳入TXCustomPhoto集合,再設置圖片的間距,和數(shù)量即可。
/**
快速生成圖片框方法(類似九宮格 圖片尺寸根據(jù)view給定的大小計算)
@param imageArray TXCustomImageArray
@param interval 圖片之間的間距
@param throwNumber 一排顯示的數(shù)量
@param isFit 是否鋪滿
*/
-(void)setImageArray:(NSArray<TXCustomPhoto *>*)imageArray
andImageInterval:(NSInteger )interval
andThrowNumber:(int )throwNumber
andIsFitImageView:(BOOL)isFit;
實現(xiàn)后的效果:
QQ20180509-1332431.png
2.根據(jù)給定的圖片大小計算TXCustomView進行布局,此方法需要創(chuàng)建一個TXCustomSizeSettings類,需求中時常會出現(xiàn)一張圖片或兩張圖片大小不一樣。
#pragma mark - 下面為拓展自定義屬性
/**
只有一張圖片的時候的尺寸
*/
@property (nonatomic, assign)CGSize onlyOneImageSize;//imageSizeForOne
/**
只有兩張圖片時候的尺寸
*/
@property (nonatomic, assign)CGSize onlyTwoImageSize;
/**
只有三張圖片時候的尺寸
*/
@property (nonatomic, assign)CGSize onlyThreeImageSize;
/**
只有一排的時候尺寸
*/
@property (nonatomic, assign)CGSize frontRowImageSize;
然后用法
/**
快速生成圖片框方法(類似九宮格 圖片尺寸根據(jù)用戶給定的imagesize大小生成)
@param imageArray TXCustomImageArray
@param sets sets TXCustomSetupSettings自定義拓展設置
*/
-(void)setCustomViewSizeWithImageArray:(NSArray<TXCustomPhoto *>*)imageArray
withSetting:(TXCustomSizeSettings *)sets;
實現(xiàn)后的效果:

image.png
3.帶圖片文字描述型。

QQ20180509-1340073.png
我這里提供了幾個數(shù)據(jù)源協(xié)議,可以自定義界面的所有view,只需要實現(xiàn)即可:
//自定義頂部view
- (UIView *)customTopView;
//自定義底部view
- (UIView *)customBottomView;
//長按圖片彈出View
- (UIView *)customLongPressView;
與此同時,還提供了幾種拓展屬性,方便使用。如果覺得好用的話,求一個star。