KWMBannerView.h 1.62 KB
Newer Older
houweibin committed
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
//
//  KWMBannerView.h
//  iCemarose
//
//  Created by HouWeiBin on 2017/5/31.
//  Copyright © 2017年 kollway. All rights reserved.
//

#import <UIKit/UIKit.h>
#import <iCarousel/iCarousel.h>
#import "KWMPageControl.h"


@class KWMBannerView;

@protocol KWMBannerViewDelegate <NSObject>

//页面滑动监听
@optional
-(void)bannerView:(KWMBannerView *)bannerView onPageIndexChange:(NSInteger)index;

//更新背景view
-(void)bannerView:(KWMBannerView *)bannerView backgroundView:(UIView *)backgroundView updateBackgroundViewAtIndex:(NSInteger)index;

//更新前景view
-(void)bannerView:(KWMBannerView *)bannerView foregroundView:(UIView *)foregroundView updateForegroundViewAtIndex:(NSInteger)index;

@required
//页面被点击 注意:小心前景view foregroundView挡住事件的情况
-(void)bannerView:(KWMBannerView *)bannerView onClickPage:(NSInteger)index;

//index对应页面view
-(UIView *)bannerView:(KWMBannerView *)bannerView reusingView:(UIView *)reusingView pageAtIndex:(NSInteger)index;

//页数
-(NSInteger)numberOfPagesForBanner:(KWMBannerView *)bannerView;


@end

@interface KWMBannerView : UIView<iCarouselDataSource, iCarouselDelegate>

//backgroundView默认会添加一个,如果不需要定制化,可以直接使用已有的
@property (nonatomic,strong) UIView *backgroundView;

//foregroundView默认会添加一个,如果不需要定制化,可以直接使用已有的
@property (nonatomic,strong) UIView *foregroundView;

@property (nonatomic,assign,readonly) NSInteger pageIndex;

@property(nonatomic,weak) id<KWMBannerViewDelegate> delegate;

-(void)reloadData;

-(void) addTimer;

-(void) removeTimer;

@end