设置背景图片或者背景movie,然后在它们之上生成数个ViewController,默认是顶部一张图片,下面是标题和详细介绍,最下面是按钮和page
github地址  https://github.com/mamaral/Onboard 
使用步骤:
1.导入头文件:  #import "OnboardingViewController.h"

2.创建控制器-OnboardingContentViewController,给控制器添加各种元素

OnboardingContentViewController *firstVc = [OnboardingContentViewController contentWithTitle:@"第一页" body:@"这是第一张图片" image:[UIImage imageNamed:@"guidepage01"] buttonText:@"点1下" action:^{
NSLog(@"点击第一张图片");
}];
OnboardingContentViewController *secondVc = [OnboardingContentViewController contentWithTitle:@"第二页" body:@"这是第二种图片" image:[UIImage imageNamed:@"guidepage02"] buttonText:@"点2下" action:^{
NSLog(@"点击第二种图片");
}];
OnboardingContentViewController *thirdVc = [OnboardingContentViewController contentWithTitle:@"第三页" body:@"这是第三章图片" image:[UIImage imageNamed:@"guidepage03"] buttonText:@"点3下" action:^{
NSLog(@"点击第三章图片");
}];

其中:

  • title是标题
  • body是文本介绍
  • image是顶部图片
  • buttonText是按钮名称
  • action是按钮点击事件block回调

3.创建背景图片 控制器- OnboardingViewController .将已创建的控制器添加上来

 OnboardingViewController *onboardingVC = [OnboardingViewController onboardWithBackgroundImage:[UIImage imageNamed:@"guidepage04"] contents:@[firstVc,secondVc,thirdVc]];

4.调整整体效果

    //可以给图片加上模糊效果(相当漂亮)
onboardingVC.shouldBlurBackground = YES;
//可以给蒙板上的文字加上淡出效果:
onboardingVC.shouldFadeTransitions = YES;
//字体样式
onboardingVC.fontName = @"Helvetica-Light";
//标题字体大小 ->参数:contentWithTitle
onboardingVC.titleFontSize = ;
//描述文字字体大小 ->参数:body
onboardingVC.bodyFontSize = ;
//OnboardingContentViewController ->参数:image的位置
onboardingVC.topPadding = ;
//OnboardingContentViewController 单独指->参数:contentWithTitle and body 距离屏幕顶部的位置
onboardingVC.underIconPadding = ;
//OnboardingContentViewController 单独指->参数:body 距离屏幕顶部的位置
onboardingVC.underTitlePadding = ;
//OnboardingContentViewController 单独指->参数:buttonText 距离屏幕底部的距离
onboardingVC.bottomPadding = ;

//是否显示pageController(就是那个计数点 ·····)默认为NO
onboardingVC.hidePageControl = YES;
//是否可以滑动(默认是YES)
onboardingVC.swipingEnabled = YES;
// 回调的block
secondVc.viewDidAppearBlock = ^{
NSLog(@"控制器即将显示..."); };

secondVc.viewDidDisappearBlock = ^{


NSLog(@"控制器即将消失..");


};

//按钮的点击事件 ->是否直接跳转到下一个控制器
secondVc.movesToNextViewController = YES;
以上的整理 参考 -->http://www.ios122.com/2015/11/onboard/ 

框架 Onboard-引导页样式制作库的更多相关文章

  1. Onboard,迷人的引导页样式制作库

    简介 Onboard主要用于引导页制作,源码写的相当规范,值得参考. 项目主页: https://github.com/mamaral/Onboard 实例下载: https://github.com ...

  2. ViewPager—01引导页的制作

    布局文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:t ...

  3. Sagit.Framework For IOS 开发框架入门教程3:Start引导页及框架布局和隐藏事件的内幕

    前言: 框架依旧在快速更新着:在重构.简化代码,统一标准的过程中. 中间也遇到各种坑,不过好在一步一脚印的解决了. 虽然还有些功能还在思考,不过教程,还是得补上: 上篇文章:Sagit.Framewo ...

  4. MUI框架-06-静态页制作(图片轮播)

    MUI框架-06-静态页制作(图片轮播) 轮播也是静态,是相对页面交互来说 上一篇介绍了如何设计一个简单的界面,还没有接触过,请先查看: MUI框架-01-介绍-创建项目-简单页面 轮播组件 之前也介 ...

  5. MUI - 引导页制作

    引导页制作 本文的引导页和[官方的引导页示例](https://github.com/dcloudio/mui/blob/master/examples/hello-mui/examples/guid ...

  6. Xamarin.Android之引导页的简单制作

    0x01 前言 对于现在大部分的APP,第一次打开刚安装或更新安装的APP都会有几个引导界面,通常这几个引导页是告诉用户 APP有些什么功能或者修改了什么bug.新增了什么功能等等等. 下面就用Xam ...

  7. Android--ViewPager制作APP引导页

    ViewPager使用FragmentStatePagerAdapter做Adapter,引导页使用多Fragment形式. FragmentStatePagerAdapter代码如下: public ...

  8. ViewPager制作APP引导页+若干动画效果

    ViewPager使用FragmentStatePagerAdapter做Adapter,引导页使用多Fragment形式. 见http://www.cnblogs.com/bmbh/p/567276 ...

  9. 网站引导页插件intro.js 的用法

    intro.js是一个用于制作网页引导效果的js插件,用法很简单,intro.js.v2.0.rar 1.在需要的页面添加引用 intro.js introjs.css 这两个文件已经足够,但是文件夹 ...

随机推荐

  1. [原]ComFriendlyWaitForSingleObject

    structThreadParam { unsignedint p1;// +00h ebp-24h unsignedint p2;// +04h ebp-20h unsignedint cookie ...

  2. Sprite(精灵)&& 三个特殊的层Layer

    用来作为以后复习使用. 1 #include "ScenceScend.h" CCScene* ScenceScend::scene() { CCScene* s = CCScen ...

  3. Photoshop学习笔记(待续)

    1. 界面设置 新建 设置 自动选择快捷键:单击时按住cmd 标尺和智能参考线 右侧的四大面板 单位与标尺 保存工作区 其他 每一种颜色模式对应一种媒介 HSB(色相.饱和度.亮度) => 人眼 ...

  4. ContentProvider跨进程共享数据

    借用ContentResolver类访问ContentProvider中共享的数据.通过getContentResolver()方法获得该类的实例. ContentResolver中的方法:inser ...

  5. 不定长链表队列C语言实现

    #ifndef _CONST_H_#define _CONST_H_ #include <stdio.h>#include <stdlib.h> typedef enum { ...

  6. Linux C++线程池

    .为什么需要线程池? 部分应用程序需要执行很多细小的任务,对于每个任务都创建一个线程来完成,任务完成后销毁线程,而这就会产生一个问题:当执行的任务所需要的时间T1小于等于创建线程时间T2和销毁线程时间 ...

  7. 总结common-dbutils.jar

    2016/4/13 20:19:36 common-dbutils.jar 最核心的类:QueryRunner updata方法: int update(String sql,Object... pa ...

  8. Git_1基础操作,从安装到提交完成(windows)

    github地址:https://github.com/zhangsai521314/Git 1:安装Git Bash(https://git-scm.com/),安装一路NEXT. 2:目录架构: ...

  9. TOEFL备考计划

    一.总则: 1.坚持每一天,充分利用一切可以利用的时间学英语.没有持之以恒的学习和大量的时将做保障,一切都是空谈. 2.每天听写一篇文章,以此文章为中心,展开一天的学习. OG, TOP 3.听说读写 ...

  10. jQuery.hasClass() 函数

    hasClass() 函数 判断当前选择元素是否有指定的类名 语法 $(selector).hasclass(classname) 返回值 返回值为布尔型(true/false) 如果当前选择对象包含 ...