forked from PageMenu/PageMenu
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCAPSPageMenu.h
More file actions
100 lines (78 loc) · 4.19 KB
/
CAPSPageMenu.h
File metadata and controls
100 lines (78 loc) · 4.19 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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
//
// CAPSPageMenu.h
//
//
// Created by Jin Sasaki on 2015/05/30.
//
//
#import <UIKit/UIKit.h>
@class CAPSPageMenu;
#pragma mark - Delegate functions
@protocol CAPSPageMenuDelegate <NSObject>
@optional
- (void)willMoveToPage:(UIViewController *)controller index:(NSInteger)index;
- (void)didMoveToPage:(UIViewController *)controller index:(NSInteger)index;
@end
@interface MenuItemView : UIView
@property (nonatomic) UILabel *titleLabel;
@property (nonatomic) UIView *menuItemSeparator;
- (void)setUpMenuItemView:(CGFloat)menuItemWidth menuScrollViewHeight:(CGFloat)menuScrollViewHeight indicatorHeight:(CGFloat)indicatorHeight separatorPercentageHeight:(CGFloat)separatorPercentageHeight separatorWidth:(CGFloat)separatorWidth separatorRoundEdges:(BOOL)separatorRoundEdges menuItemSeparatorColor:(UIColor *)menuItemSeparatorColor;
- (void)setTitleText:(NSString *)text;
@end
@interface CAPSPageMenu : UIViewController <UIScrollViewDelegate, UIGestureRecognizerDelegate>
@property (nonatomic, strong) UIScrollView *menuScrollView;
@property (nonatomic, strong) UIScrollView *controllerScrollView;
@property (nonatomic, readonly) NSArray *controllerArray;
@property (nonatomic, readonly) NSArray *menuItems;
@property (nonatomic, readonly) NSArray *menuItemWidths;
@property (nonatomic) NSInteger currentPageIndex;
@property (nonatomic) NSInteger lastPageIndex;
@property (nonatomic) CGFloat menuHeight;
@property (nonatomic) CGFloat menuMargin;
@property (nonatomic) CGFloat menuItemWidth;
@property (nonatomic) CGFloat selectionIndicatorHeight;
@property (nonatomic) NSInteger scrollAnimationDurationOnMenuItemTap;
@property (nonatomic) UIColor *selectionIndicatorColor;
@property (nonatomic) UIColor *selectedMenuItemLabelColor;
@property (nonatomic) UIColor *unselectedMenuItemLabelColor;
@property (nonatomic) UIColor *scrollMenuBackgroundColor;
@property (nonatomic) UIColor *viewBackgroundColor;
@property (nonatomic) UIColor *bottomMenuHairlineColor;
@property (nonatomic) UIColor *menuItemSeparatorColor;
@property (nonatomic) UIFont *menuItemFont;
@property (nonatomic) CGFloat menuItemSeparatorPercentageHeight;
@property (nonatomic) CGFloat menuItemSeparatorWidth;
@property (nonatomic) BOOL menuItemSeparatorRoundEdges;
@property (nonatomic) BOOL addBottomMenuHairline;
@property (nonatomic) BOOL menuItemWidthBasedOnTitleTextWidth;
@property (nonatomic) BOOL useMenuLikeSegmentedControl;
@property (nonatomic) BOOL centerMenuItems;
@property (nonatomic) BOOL enableHorizontalBounce;
@property (nonatomic) BOOL hideTopMenuBar;
@property (nonatomic, weak) id <CAPSPageMenuDelegate> delegate;
- (void)addPageAtIndex:(NSInteger)index;
- (void)moveToPage:(NSInteger)index;
- (instancetype)initWithViewControllers:(NSArray *)viewControllers frame:(CGRect)frame options:(NSDictionary *)options;
extern NSString * const CAPSPageMenuOptionSelectionIndicatorHeight;
extern NSString * const CAPSPageMenuOptionMenuItemSeparatorWidth;
extern NSString * const CAPSPageMenuOptionScrollMenuBackgroundColor;
extern NSString * const CAPSPageMenuOptionViewBackgroundColor;
extern NSString * const CAPSPageMenuOptionBottomMenuHairlineColor;
extern NSString * const CAPSPageMenuOptionSelectionIndicatorColor;
extern NSString * const CAPSPageMenuOptionMenuItemSeparatorColor;
extern NSString * const CAPSPageMenuOptionMenuMargin;
extern NSString * const CAPSPageMenuOptionMenuHeight;
extern NSString * const CAPSPageMenuOptionSelectedMenuItemLabelColor;
extern NSString * const CAPSPageMenuOptionUnselectedMenuItemLabelColor;
extern NSString * const CAPSPageMenuOptionUseMenuLikeSegmentedControl;
extern NSString * const CAPSPageMenuOptionMenuItemSeparatorRoundEdges;
extern NSString * const CAPSPageMenuOptionMenuItemFont;
extern NSString * const CAPSPageMenuOptionMenuItemSeparatorPercentageHeight;
extern NSString * const CAPSPageMenuOptionMenuItemWidth;
extern NSString * const CAPSPageMenuOptionEnableHorizontalBounce;
extern NSString * const CAPSPageMenuOptionAddBottomMenuHairline;
extern NSString * const CAPSPageMenuOptionMenuItemWidthBasedOnTitleTextWidth;
extern NSString * const CAPSPageMenuOptionScrollAnimationDurationOnMenuItemTap;
extern NSString * const CAPSPageMenuOptionCenterMenuItems;
extern NSString * const CAPSPageMenuOptionHideTopMenuBar;
@end