You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
2.7 KiB
68 lines
2.7 KiB
![]()
2 years ago
|
//
|
||
|
// KJBannerView.h
|
||
|
// KJBannerView
|
||
|
//
|
||
|
// Created by 杨科军 on 2018/2/27.
|
||
|
// Copyright © 2018年 杨科军. All rights reserved.
|
||
|
// 轮播图
|
||
|
|
||
|
#import <UIKit/UIKit.h>
|
||
|
#import "KJPageView.h"
|
||
|
#import "KJBannerViewCell.h"
|
||
|
#import "KJBannerViewProtocol.h"
|
||
|
#import "NSTimer+KJSolve.h"
|
||
|
NS_ASSUME_NONNULL_BEGIN
|
||
|
|
||
|
@interface KJBannerView : UIView
|
||
|
/// 代理方法
|
||
|
@property (nonatomic,weak) id<KJBannerViewDelegate> delegate;
|
||
|
@property (nonatomic,weak) id<KJBannerViewDataSource> dataSource;
|
||
|
/// block回调
|
||
|
@property (nonatomic,readwrite,copy) void(^kSelectBlock)(KJBannerView *banner,NSInteger idx);
|
||
|
@property (nonatomic,readwrite,copy) void(^kScrollBlock)(KJBannerView *banner,NSInteger idx);
|
||
|
|
||
|
//************************ 数据源API ************************
|
||
|
/// 网络数组 1.本地 2.图片 url string
|
||
|
@property (nonatomic,strong) NSArray *imageDatas;
|
||
|
/// 自动滚动间隔时间,默认2s
|
||
|
@property (nonatomic,assign) IBInspectable CGFloat autoScrollTimeInterval;
|
||
|
/// 是否无线循环,默认yes
|
||
|
@property (nonatomic,assign) IBInspectable BOOL infiniteLoop;
|
||
|
/// 是否自动滑动,默认yes
|
||
|
@property (nonatomic,assign) IBInspectable BOOL autoScroll;
|
||
|
/// 是否缩放,默认不缩放
|
||
|
@property (nonatomic,assign) IBInspectable BOOL isZoom;
|
||
|
/// cell宽度,左右宽度
|
||
|
@property (nonatomic,assign) IBInspectable CGFloat itemWidth;
|
||
|
/// cell间距,默认为0
|
||
|
@property (nonatomic,assign) IBInspectable CGFloat itemSpace;
|
||
|
/// 滚动方向,默认从右到左
|
||
|
@property (nonatomic,assign) KJBannerViewRollDirectionType rollType;
|
||
|
/// 分页控制器
|
||
|
@property (nonatomic,strong,readonly) KJPageView *pageControl;
|
||
|
|
||
|
/// 暂停计时器滚动处理,备注:在viewDidDisappear当中实现
|
||
|
- (void)kj_pauseTimer;
|
||
|
/// 继续计时器滚动,备注:在viewDidAppear当中实现
|
||
|
- (void)kj_repauseTimer;
|
||
|
|
||
|
//************************ 自带Cell可设置属性 *****************************/
|
||
|
/** 是否裁剪, 默认no*/
|
||
|
@property (nonatomic,assign) BOOL kj_scale;
|
||
|
/** imagView圆角, 默认为0 */
|
||
|
@property (nonatomic,assign) IBInspectable CGFloat imgCornerRadius;
|
||
|
/** cell的占位图, 用于网络未加载到图片时 */
|
||
|
@property (nonatomic,strong) IBInspectable UIImage *placeholderImage;
|
||
|
/** 轮播图片的ContentMode, 默认为 UIViewContentModeScaleToFill */
|
||
|
@property (nonatomic,assign) UIViewContentMode bannerImageViewContentMode;
|
||
|
/** 图片的样式, 默认 KJBannerViewImageTypeLocality 网络图片 */
|
||
|
@property (nonatomic,assign) KJBannerViewImageType imageType;
|
||
|
|
||
|
//************************ 废弃属性方法 *****************************/
|
||
|
/// 支持自定义Cell,自定义Cell需继承自 KJBannerViewCell
|
||
|
@property (nonatomic,strong) Class itemClass DEPRECATED_MSG_ATTRIBUTE("Please use dataSource [kj_BannerView:BannerViewCell:ImageDatas:Index:]");
|
||
|
|
||
|
@end
|
||
|
|
||
|
NS_ASSUME_NONNULL_END
|