YWExcel 1.1.4

YWExcel 1.1.4

YWRouter 维护。



YWExcel 1.1.4

  • 姚女士

YWExcel

打造类似 Excel 表的展示控件

通过采用 UITableView 和 UIScrollView 的嵌套使用来实现 Excel、课程表、左右、上下联动效果。

在我的项目中遇到了许多报表,尽管目前只是一个简单的展示,可以用 tableView 单元格显示,满足目前的需求,但是我仔细考虑了,能否实现类似 Excel 表的展示,既可以左右滑动,又可以上下滑动,当时我查阅了大量的资料,也查阅了众多国外网站的资料,却找不到相似的开源项目,最终我决定自己去实现一个类似 Excel 的控件(# YWExcel )

兼容性

1、兼容横屏和竖屏 2、iOS8以上

集成方法

1. 将 YWExcel 这个文件夹拖到项目中.

2. 使用 cocoapods

   pod 'YWExcel'

效果图

效果图.gif

整体描述图

图.png

1、红色部分为:UITableView

2 蓝色部分:UITableViewCell

3 黄色部分:UIScrollView

4 类目那一行:目前设置2个模式

1)作为独立UITableView之上的视图

2)作为UITableView的组头视图

设置联动的思路

在 -(void)scrollViewDidScroll:(UIScrollView *)scrollView 监听偏移量,去改变其他UIScrollView的偏移量(采用通知中心)

类似UITableView的用法

@protocol YWExcelViewDataSource<NSObject>
@required
//多少行
- (NSInteger)excelView:(YWExcelView *)excelView numberOfRowsInSection:(NSInteger)section;
//多少列
- (NSInteger)itemOfRow:(YWExcelView *)excelView;
@optional
- (void)excelView:(YWExcelView *)excelView label:(UILabel *)label textAtIndexPath:(YWIndexPath *)indexPath;
- (void)excelView:(YWExcelView *)excelView headView:(UILabel *)label textAtIndexPath:(YWIndexPath *)indexPath;
//分组
- (NSInteger)numberOfSectionsInExcelView:(YWExcelView *)excelView;
@end

@protocol YWExcelViewDelegate <NSObject>


@optional

//自定义每列的宽度/默认每列的宽度为80
- (NSArray *)widthForItemOnExcelView:(YWExcelView *)excelView;

@end

样式选择

typedef NS_ENUM(NSInteger, YWExcelViewStyle) {
    YWExcelViewStyleDefalut = 0,//整体表格滑动,上下、左右均可滑动(除第一列不能左右滑动以及头部View不能上下滑动外)
    YWExcelViewStylePlain,//整体表格滑动,上下、左右均可滑动(除第一行不能上下滑动以及头部View不能上下滑动外)
    YWExcelViewStyleheadPlain,//整体表格(包括头部View)滑动,上下、左右均可滑动(除第一列不能左右滑动外)
    YWExcelViewStyleheadScrollView,//整体表格(包括头部View)滑动,上下、左右均可滑动
};