DVITutorialView 0.2.2

DVITutorialView 0.2.2

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
Released上次发布2014年12月

Bart van Kuik 维护。



  • Bart van Kuik

这个教程视图旨在添加到单个 ViewController 中,以解释其用户元素。在滑动教程时,每一页都会在你的用户界面中揭露一个元素,并显示说明。

演示

使用方法

要运行示例项目,请克隆仓库,并首先从 Example 目录中运行 pod install

以下是添加教程到您的视图控制器中的短代码片段。首先,像这样包含头文件

#import <DVITutorialView/DVITutorialView.h>

假设您在屏幕上的某个地方有一个帮助按钮,把以下代码放入您视图控制器中的动作方法内。

- (IBAction)tutorialButtonTapped:(id)sender
{
    DVITutorialView *tutorialView = [[DVITutorialView alloc] init];
    [tutorialView addToView:self.view];

    tutorialView.tutorialStrings = @[
                                     @"Explanation on button",
                                     @"Explanation on this nice label",
                                     @"Some text on the text field",
                                     @"and finally, what this label is about",
                                     @"And a thank you on a blank screen",
                                     ];
    tutorialView.tutorialViews = @[
                                   self.button1,
                                   self.label1,
                                   self.textField1,
                                   self.label2
                                   [[UIView alloc] init],  // No exposed UI elements
                                   ];
    [tutorialView start];

    // Or alternatively:
    // [tutorialView startWithCompletion:^(){
    //     NSLog(@"The End!");
    // }];

}

有时,您有自定义视图,您只想公开其一部分。在您的自定义视图的头文件中将此代码放入

@property (readonly) CGRect visibleFrame;
- (NSValue*)visibleFrameAsValue;

并在自定义视图的主体中放入以下代码

- (NSValue*)visibleFrameAsValue
{
    NSValue *value = [NSValue valueWithCGRect:self.visibleFrame];
    return value;
}

-(void)layoutSubviews
{
    float margin = 50.0;
    _visibleFrame = CGRectInset(self.frame, margin, margin);

    [super layoutSubviews];
}

然后,教程类不会公开视图的框架,而是调用 visibleFrameAsValue 和(在上面的示例中)公开减去 50 点边距的框架。

要求

您的项目需要使用 Auto Layout。我只在 iOS 8 上进行了测试。

安装

杂项

使用 QuickTime 屏幕录制制作的演示,使用以下方法将生成的 .mov 文件转换为动画 gif

ffmpeg -i demo.mov -r 15 demo.gif

作者

Bart van Kuik,[email protected]

许可证

DVITutorialView 在 MIT 许可证下可用。有关更多信息,请参阅 LICENSE 文件。