BBAGridPannelDataSource.h
1.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
//
// BBAGridPannelDataSource.h
// BBAPods
//
// Created by liurui12 on 16/8/19.
// Copyright © 2016年 Baidu. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "BBAPannelAction.h"
#import "BBAGridPannelView.h"
#import "BBAGridPannelProtocol.h"
@class BBAGridPannelConfigData;
typedef enum : NSUInteger {
BBAGridPannelDataTypeSingleDimensionalArray = 0, //一维数组类型
BBAGridPannelDataTypeDoubleDimensionalArray = 1, //二维数组类型
} BBAGridPannelDataType;
extern CGFloat const kPannelHalfMarginInsetX; // 多出半个展示时边界距离
@interface BBAGridPannelDataSource : NSObject<BBAGridPannelDataSource>
@property (nonatomic , weak) BBAGridPannelView *weakPannelView;
@property (nonatomic, strong, readonly) NSArray<NSArray<BBAPannelAction *> *> *rowsActions;
@property (nonatomic, strong, readonly) NSArray<BBAPannelAction *> *actions;
@property (nonatomic, strong, readonly) BBAGridPannelConfigData *configData;
@property (nonatomic, copy) NSString *cellIdentifier;
@property (nonatomic, assign, readonly) BBAGridPannelDataType dataType;
- (instancetype)initWithActions:(NSArray<BBAPannelAction *> *)actions configData:(BBAGridPannelConfigData *)configData;
- (instancetype)initWithRowsActions:(NSArray<NSArray<BBAPannelAction *> *> *)actions configData:(BBAGridPannelConfigData *)configData;
/*!
@method
@brief 屏幕size。
@result CGRect
*/
+ (CGRect)windowFrameWithOrientation:(UIInterfaceOrientation)orientation;
/*!
@method
@brief 返回面板高度
@result 高度 。
*/
-(CGFloat)pannelHeight;
/*!
@method
@brief 更新actions
*/
-(void)updateActions:(NSArray<BBAPannelAction *> *)actions;
/*!
@method
@brief 更新二维rowsActions
*/
-(void)updateRowsActions:(NSArray<NSArray<BBAPannelAction *> *> *)rowsActions;
/*!
* @method 当前 actions 数组中可能会存在无效的action,获取去除无效的action的item个数
*
*/
- (NSUInteger)numberOfItemNoEmptyActionInDataSource;
-(UIEdgeInsets)contenInsets;
@end