BBAMultiTabItem.h
2.45 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
72
73
74
75
76
77
78
79
80
//
// BBAMultiTabItem.h
// BBAUIKit
//
// Created by liyongrui on 2018/12/14.
//
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#import <BBAUIKit/BBABadgeValueView.h>
NS_ASSUME_NONNULL_BEGIN
@class BBAMultiTabItemView;
@class BBAMultiTabItem;
@protocol BBAMultiTabItemDelegate<NSObject>
- (void)multiTabItemDidClick:(BBAMultiTabItem *)item;
@end
@interface BBAMultiTabItem: NSObject
@property (nonatomic, copy) NSString *title;
@property (nonatomic, assign) CGPoint badgeOffset;
@property (nonatomic, assign) CGFloat badgeAlpha;
@property (nonatomic, assign) CGFloat fontSize;
/// 外部设置字体
@property (nonatomic, strong) UIFont *normalfont;
@property (nonatomic, strong) UIFont *selectedfont;
/// 选中时放大比例(默认:17.0/15.0)
@property (nonatomic, assign) CGFloat selectScale;
/// 默认态颜色(默认:#666666)
@property (nonatomic, strong) UIColor *normalTextColor;
/// 选中态颜色(默认:#000000)
@property (nonatomic, strong) UIColor *selectTextColor;
/// 指示调颜色(默认:#333333)
@property (nonatomic, strong) UIColor *selectionIndicatorColor;
/// 是否选中态粗体 选中态粗体(默认:NO)
@property (nonatomic, assign, getter=isSelectedBold) BOOL selectedBold;
/// 标志在沉浸式模式下,该Item是否为沉浸式
@property (nonatomic, assign) BOOL isImmersive;
/// tab活动配置,标题前的icon地址
@property (nonatomic, copy, nullable) NSString *iconUrl;
/// tab活动配置,是否满足显示icon条件
@property (nonatomic, assign) BOOL showIcon;
/// 显示图片
@property (nonatomic, copy, nullable) NSString *picUrl;
@property (nonatomic, assign) CGFloat picWidth;
@property (nonatomic, assign) CGFloat picAlpha;
@property (nonatomic, strong) BBAMultiTabItemView *view;
@property (nonatomic, assign, getter=isSelected) BOOL selected;
@property (nonatomic, weak) id<BBAMultiTabItemDelegate> delegate;
@property (nonatomic, strong) BBABadgeValueView *badgeView;
@property (nonatomic, assign, getter=isDisplayed) BOOL displayed;
@property (nonatomic, assign) CGFloat progress;
/// 默认值0 负值标题向上移动 正值标题向下移动
@property (nonatomic, assign) CGFloat titleTopMargin;
- (instancetype)initWithTitle:(NSString *)title;
- (void)showBadge;
- (void)showBadgeText:(NSString *)text;
- (void)clearBadge;
- (BOOL)isBadgeDisplayed;
- (void)setImmersiveProgress:(CGFloat)progress textColor:(UIColor *)textColor;
- (void)updateBadgePosition;
@end
NS_ASSUME_NONNULL_END