BBAGridPannelConfigData.h 3.48 KB
//
//  BBAGridPannelConfigData.h
//  BBAPods
//
//  Created by liurui12 on 16/8/31.
//  Copyright © 2016年 Baidu. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

typedef enum : NSUInteger {
    BBAPannelImageTypeNone = 0, //如果是None,默认设置为Dark
    BBAPannelImageTypeLight = 1,
    BBAPannelImageTypeDark = 2,
} BBAPannelCellImageType;

typedef NS_ENUM(NSUInteger, BBAPannelInteractStyle) {
    BBAPannelInteractStyleHalf = 0, // 末尾露出半个 可滑动 11.15调整为默认样式
    BBAPannelInteractStyleDefault = 1, // 整页完全显示,不可滑动
};

@interface BBAGridPannelConfigData : NSObject
@property (nonatomic) BBAPannelInteractStyle pannelInteractStyle; // 当前展示交互样式
@property(nonatomic) NSUInteger  rowsOfCurrentPage;                  //根据传入多位数组判断应该是几行,暂时只支持最多两行
@property(nonatomic) NSUInteger  columnsOfCurrentPage;                  //根据规则计算实际显示多少列
@property(nonatomic) NSUInteger  maxColumnsOfPage;                      //配置每页最多有多少列
@property(nonatomic) NSUInteger  maxRowsOfPage;                         //配置每页最多有多少行
@property(nonatomic) CGFloat     gridPannelRowSpacing;                  //行间距
@property(nonatomic) UIEdgeInsets coverContenInsets;                    //pannel背景遮罩insets
@property(nonatomic) CGFloat panelBGColorAlpha;                         //面板背景颜色alpha
@property(nonatomic) CGFloat cellBGColorAlpha;                         //cell背景颜色alpha

@property(nonatomic,strong)  UIColor * pannelBGColor;         //面板背景颜色
@property(nonatomic,strong)  UIColor * pannelCellBGColor;  //面板cell背景颜色
@property(nonatomic,strong)  UIColor * pannelCellTextColor;  //面板text背景颜色
@property(nonatomic,strong)  UIColor * pannelCellPressBGColor;  //面板cell按下背景颜色
@property(nonatomic,strong)  UIColor * pageIndicatorTintColor;         //pageControll 默认颜色
@property(nonatomic,strong)  UIColor * currentPageIndicatorTintColor;  //pageControll 选中颜色
@property(nonatomic) BBAPannelCellImageType bbaPannelImageType; //图片显示类型
@property (nonatomic, copy) NSString *pannelThemeMode; //面板指定主题模式

-(id)initWithPannelBGColorHexString:(NSString *)colorHexString
                        cellBGColor:(NSString *)cellBGColorHexString
                   cellPressBGColor:(NSString *)cellPressBGColorHexString
             pageIndicatorTintColor:(NSString *)pageIndicatorTintColor
      currentPageIndicatorTintColor:(NSString *)currentPageIndicatorTintColor
       pannelCellTextColorHexString:(NSString *)pannelCellTextColorHexString
                   maxColumnsOfPage:(NSUInteger)maxColumnsOfPage
                      maxRowsOfPage:(NSUInteger)maxRowsOfPage
               gridPannelRowSpacing:(CGFloat)gridPannelRowSpacing
                  panelBGColorAlpha:(CGFloat)panelBGColorAlpha
                   cellBGColorAlpha:(CGFloat)cellBGColorAlpha
                  coverContenInsets:(UIEdgeInsets)coverContenInsets
                    pannelImageType:(BBAPannelCellImageType)pannelImageType
                    pannelThemeMode:(NSString *)pannelThemeMode
                pannelInteractStyle:(BBAPannelInteractStyle)interactStyle;

-(id)initWithDictionary:(NSDictionary *)dictionary;

- (void)updateConfigData:(NSArray *)firstActions secondRowActions:(NSArray *)sectionActions;

- (void)updateConfigWithRowsItems: (NSArray*)rowsItems;

@end