developer
2023-05-20 c1ffd99c4b60066774eb2c97b31e4aaa014e7f51
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
//
//  UIViewController+UIViewController_ZJScrollPageController.m
//  ZJScrollPageView
//
//  Created by jasnig on 16/6/7.
//  Copyright © 2016年 ZeroJ. All rights reserved.
//
 
#import "UIViewController+ZJScrollPageController.h"
#import "ZJScrollPageViewDelegate.h"
#import <objc/runtime.h>
char ZJIndexKey;
@implementation UIViewController (ZJScrollPageController)
 
//@dynamic zj_scrollViewController;
 
- (UIViewController *)zj_scrollViewController {
    UIViewController *controller = self;
    while (controller) {
        if ([controller conformsToProtocol:@protocol(ZJScrollPageViewDelegate)]) {
            break;
        }
        controller = controller.parentViewController;
    }
    return controller;
}
 
- (void)setZj_currentIndex:(NSInteger)zj_currentIndex {
    objc_setAssociatedObject(self, &ZJIndexKey, [NSNumber numberWithInteger:zj_currentIndex], OBJC_ASSOCIATION_ASSIGN);
}
 
- (NSInteger)zj_currentIndex {
    return [objc_getAssociatedObject(self, &ZJIndexKey) integerValue];
}
 
 
@end