TAXSpreadSheet 0.2.2

TAXSpreadSheet 0.2.2

测试已测试
语言语言 Obj-CObjective C
许可 MIT
发布最新版本2015年1月

ShinichiKanai维护。



  • ——
  • ShinichiKanai

显示像电子表格单元格一样的视图。

TAXSpreadSheet_SC_1

要求

iOS 6.0或更高版本

安装

通过CocoaPods

pod 'TAXSpreadSheet'

使用

导入头文件

#import "TAXSpreadSheet.h"

实例化TAXSpreadSheet并注册UICollectionViewCell或其子类作为单元格,与UICollectionView相同。

TAXSpreadSheet *spreadSheet = [[TAXSpreadSheet alloc] initWithFrame:CGRectMake(0.0. 0.0. 100.0, 100.0)];
[spreadSheet registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:@"Cell"];

设置DataSource和Delegate对象并实现这些方法。

- (NSUInteger)numberOfColumnsInSpreadSheet:(TAXSpreadSheet *)spreadSheet
{
    return 10;
}

- (NSUInteger)numberOfRowsInSpreadSheet:(TAXSpreadSheet *)spreadSheet
{
    return 20;
}

- (UICollectionViewCell *)spreadSheet:(TAXSpreadSheet *)spreadSheet cellAtRow:(NSUInteger)row column:(NSUInteger)column
{
    UICollectionViewCell *cell = [spreadSheet dequeueReusableCellWithReuseIdentifier:@"Cell" forRow:row column:column];

    // Customize cells.

    return cell;
}

您应该在spreadSheet:cellAtRow:column中从SpreadSheet返回dequeued UICollectionViewCell子类。

自定义

指定单独的度量

您可以通过实现代理方法来指定行的高度、列的宽度、行/列间的间距。如果使用默认值,返回NSNotFound。

- (CGFloat)spreadSheet:(TAXSpreadSheet *)spreadSheet heightAtRow:(NSUInteger)row
{
    if (row == 0) {
        return 100.0;
    } else {
        return 50.0;
    }
}

为行/列间使用自定义视图

您可以通过实现代理方法使用自定义UICollectionReusableView子类来在行/列间使用。您应该从SpreadSheet中注册类和预览视图。如果不使用视图,返回nil。

- (UICollectionReusableView *)spreadSheet:(TAXSpreadSheet *)spreadSheet interRowViewBelowRow:(NSUInteger)row
{
    if (row == 0) {
        UICollectionReusableView *view = [spreadSheet dequeueReusableInterRowViewWithIdentifier:@"View" belowRow:row];
        return view;
    } else {
        return nil;
    }
}

许可

MIT许可证

更改日志

0.2.0

  • [新增] UICollectionView/Layout兼容方法。
  • [新增] 前向CollectionViewDelegate方法。
  • [新增] backgroundView属性。
  • [修复] backgroundColor属性。

0.2.1

  • [修复] 当行或列的数量变为零时的崩溃。