YSTutorialViewController0.2

YSTutorialViewController0.2

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
发布最新发布2015年8月

Cem Olcay维护。



  • Cem Olcay

快速创建扁平化设计的教程页面。它可以读取 JSON 文件中的页面数据,页面无需编码!可完全自定义。

演示

alt tag

安装

手动安装

YSTutorialViewController 文件夹复制到您的项目中

用法

创建一个 YSTutorialViewController

     self.tutorialViewController = [[YSTutorialViewController alloc] init];
    [self.tutorialViewController setDataSource:self];
    [self.tutorialViewController setDelegate:self];
    [self.tutorialViewController reloadTutorialViewController];
    [self.view addSubview:self.tutorialViewController.view];

YSTutorialViewControllerDataSource

用您的页面数组填充数据源

- (NSInteger)numberOfPagesInTutorialViewController:(YSTutorialViewController *)viewController {
    return self.tutorialPages.count;
}

- (YSTutorialPageView *)tutorialViewController:(YSTutorialViewController *)viewController tutorialPageViewForIndex:(NSInteger)index {
    return (YSTutorialPageView *)self.tutorialPages[index];
}

YSTutorialViewControllerDelegate

可选的代理方法以控制操作

@protocol YSTutorialViewControllerDelegate

@optional

- (UIImage *)tutorialViewControllerBackgroundImageForIndex:(NSInteger)index;
- (void)tutorialViewControllerDidPressedCloseButton: (YSTutorialViewController *)viewController;
- (void)tutorialViewController:(YSTutorialViewController *)viewController didScrollToPageAtIndex:(NSInteger)index;

@end

YSTutorialPageSerializer

如果您想使用 JSON 文件创建页面,可以使用+ (NSArray *)tutorialPageViewsWithJSONFile:(NSString *)path方法将YSTutorialPageView数组序列化

    self.tutorialPages = [YSTutorialPageSerializer tutorialPageViewsWithJSONFile:@"tutorialPages"];

手动创建 YSTutorialPageView

    YSTutorialPageView *page = [[YSTutorialPageView alloc] initWithImageNamed:@"tutImage.png"
                                                              bottomViewColor:[UIColor redColor]
                                                                    iconNamed:@"tutIcon.png"
                                                                        title:@"Title goes here"
                                                                         text:@"This is the text that describes your app's awesome feature"];

YSTutorialViewControllerAppearance

您可以使用外观并使用它初始化 YSTutorialViewController。YSTutorialViewControllerAppearance 看起来像这样

@property (nonatomic, strong) UIColor *titleLabelColor;
@property (nonatomic, strong) UIFont *titleLabelFont;

@property (nonatomic, strong) UIColor *descriptionLabelColor;
@property (nonatomic, strong) UIFont *descriptionLabelFont;

@property (nonatomic, assign) CGFloat tutorialPageBottomViewHeight;
@property (nonatomic, strong) UIColor *pageControlTintColor;

@property (nonatomic, assign) CGFloat backgroundImageViewOverlayAlpha;
@property (nonatomic, strong) UIColor *backgroundImageViewOverlayColor;

@property (nonatomic, strong) UIColor *closeButtonColor;
@property (nonatomic, assign) CGFloat closeButtonLineWidth;
- (instancetype)initWithAppearance:(YSTutorialViewControllerAppearance *)appearance;