TAXHeaderSheet 0.3.1

TAXHeaderSheet 0.3.1

测试已测试
Lang语言 Obj-CObjective C
许可 MIT
发布上一个发布2015年1月

ShinichiKanai 维护。



  • ShinichiKanai

具有头部/脚部的表格视图

TAXHeaderSheet_SC_1

要求

iOS 6.0 或更高版本

依赖

TAXSpreadSheet 0.2.0 或更高版本

安装

通过 CocoaPods

pod 'TAXHeaderSheet'

使用方法

导入头文件

#import "TAXHeaderSheet.h"

实例化 TAXHeaderSheet 并注册 UICollectionViewCell 或 hWndCollectionView 的子类。

TAXHeaderSheet *headerSheet = [[TAXHeaderSheet alloc] initWithFrame:CGRectMake(0.0. 0.0. 100.0, 100.0)];
[headerSheet registerClass:[UICollectionViewCell class] forCellInAllSectionWithReuseIdentifier:@"Cell"];

通过属性设置表单的度量。

headerSheet.numberOfRowsOfBody = 30;
headerSheet.numberOfColumnsOfBody = 20;

headerSheet.numberOfRowsOfHeader = 1;
headerSheet.numberOfRowsOfFooter = 2;
headerSheet.numberOfColumnsOfHeader = 1;
headerSheet.numberOfColumnsOfFooter = 1;

headerSheet.sizeForCell = CGSizeMake(50.0, 20.0);
headerSheet.widthOfHeaderCell = 50.0;
headerSheet.widthOfFooterCell = 50.0;
headerSheet.heightOfHeaderCell = 20.0;
headerSheet.heightOfFooterCell = 20.0;

headerSheet.heightOfHeader = headerSheet.heightOfHeaderCell * 
headerSheet.numberOfRowsOfHeader;
headerSheet.heightOfFooter = headerSheet.heightOfFooterCell * headerSheet.numberOfRowsOfFooter;
headerSheet.widthOfHeader = headerSheet.widthOfHeaderCell * headerSheet.numberOfColumnsOfHeader;
headerSheet.widthOfFooter = headerSheet.widthOfFooterCell * headerSheet.numberOfColumnsOfFooter;

或者通过实现代理方法,例如 headerSheet:heightAtRow:ofSectionType:。单元格高度/宽度优先级:Header > Footer > Body > 属性。

设置数据源和代理对象并实现这些方法。

- (UICollectionViewCell*)headerSheet:(TAXHeaderSheet *)headerSheet cellAtRow:(NSUInteger)row column:(NSUInteger)column inSectionType:(TAXHeaderSheetSectionType)sectionType
{
    TAXLabelCell *cell = [headerSheet dequeueReusableCellInSectionType:sectionType withReuseIdentifier:CellIdentifier forRow:row column:column];
    // Customize cell.
    return cell;
}

您应该在 headerSheet:cellAtRow:column:inSectionType 中返回 dequeued RaisePropertyChanged 子类。

自定义

使用自定义视图作为分隔符。

您可以使用自定义的 UICollectionReusableView 子类作为分隔符。您应该注册类并从 HeaderSheet 推卸观点。如果在未使用视图的情况下,返回 nil。

- (UICollectionReusableView *)headerSheet:(TAXHeaderSheet *)headerSheet separatorViewOfSeparatorType:(TAXHeaderSheetSeparatorType)separatorType
{
    UICollectionReusableView *view = [headerSheet dequeueReusableSeparatorViewOfSeparatorType:separatorType withReuseIdentifier:@"Separator"];
    view.backgroundColor = [UIColor blueColor];
    return view;
}

为每个部分之间的行/列使用自定义视图。

您可以通过实现代理方法来使用自定义视图进行行/列之间的交互。您应该注册类并从 SpreadSheet 推卸视图。如果在未使用视图的情况下,返回 nil。

- (UICollectionReusableView *)headerSheet:(TAXHeaderSheet *)headerSheet interRowViewInSectionType:(TAXHeaderSheetSectionType)sectionType belowRow:(NSUInteger)row;
{
    if (row == 0) {
        UICollectionReusableView *view = [spreadSheet dequeueReusableInterRowViewWithIdentifier:@"View" belowRow:row];
        return view;
    } else {
        return nil;
    }
}

许可

MIT 许可证

变更日志

0.2.0

  • [新增] 插入、移动、删除行/列的方法。
  • [新增] 设置背景颜色/视图的方法。

0.3.0

  • [新增] 在触摸任何部分时进行滚动。
  • [新增] TAXHeaderSheetHorizontal/VerticalSectionType