高度可定製的應用歡迎頁通用解決方案,可高度定製,不要僅限於現有的demo.ios
項目主頁: EAIntroViewgit
最新示例: 點擊下載github
安裝後,引入」 EAIntroView.h」並設置EAIntroDelegate代理便可.編程
pod 'EAIntroView', '~> 2.7.0'
添加EAIntroPage ,EAIntroView和EARestrictedScrollView 的.h和.m文件到你的工程便可.數組
EAIntroView 可高度定製,不要僅限於現有的demo.
EAIntroView 是有一個展現用的IntroView和一組展現頁面來組成一系列引導展現頁.
基本使用方式是: 建立一組EAIntropage(可自定義,具體使用見下文),使用這組EAIntropage 建立一個EAIntroView的視圖IntroView,將這個IntroView showInView到想要展現的視圖上(見下文)app
* background(有交叉的頁之間的過渡)
* 在background上定製iOS7運動的效果(視差)
* title視圖(y 座標)
* title 文本(字體,顏色,y座標)
* description 文本(字體,顏色 ,寬度,y座標)
* 子視圖數組(在創建默認的佈局後添加到界面上)ide
pageWithCustomView://自定義視圖佈局
pageWithCustomViewFromNibNamed://自定義nib字體
pageDidLoad 頁面加載動畫
pageDidAppear 頁面顯示
pageDidDisappear 頁面消失
swipe from last page to close //滑到最後一個關閉
switching pages with one simple tap//輕拍切換
custom background image or color//設置背景圖片,顏色
custom page control//定義page control
custom skip button //自定義跳過按鈕
pinned titleView //自定義 標題視圖
introDidFinish: //完成引導
intro:pageAppeared:withIndex: //引導頁切換
* setPages://設置界面
* showInView:animateDuration://設置展現動畫
* hideWithFadeOutDuration://顯示和消失時間
* setCurrentPageIndex:animated://設置當前顯示的界面以及動畫
每個界面須要經過[EAIntroPage page]來建立,你能夠自定義屬性,全部的屬性都是可選的.或者你能夠經過你自定義的view(能夠是nib),使用這種方式大多數選項就被忽略了.例如:
// 基本的建立方式 EAIntroPage *page1 = [EAIntroPage page]; page1.title = @"Hello world"; page1.desc = sampleDescription1; // 自定義的,這些屬性都是可選的 EAIntroPage *page2 = [EAIntroPage page]; page2.title = @"This is page 2"; page2.titleFont = [UIFont fontWithName:@"Georgia-BoldItalic" size:20]; page2.titlePositionY = 220; page2.desc = sampleDescription2; page2.descFont = [UIFont fontWithName:@"Georgia-Italic" size:18]; page2.descPositionY = 200; page2.titleIconView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"title2"]]; page2.titleIconPositionY = 100; //nib的自定義視圖 EAIntroPage *page3 = [EAIntroPage pageWithCustomViewFromNibNamed:@"IntroPage"]; page3.bgImage = [UIImage imageNamed:@"bg2"];
全部的頁面建立完成後,建立介紹視圖,只是在介紹視圖中按順序展現.也能夠經過傳遞給IntroView一組視圖初始化, IntroView將重建視圖的內容.
EAIntroView *intro = [[EAIntroView alloc] initWithFrame:self.view.bounds andPages:@[page1,page2,page3,page4]]; //設置代理 [intro setDelegate:self];
[intro showInView:self.view animateDuration:0.0];
從EAIntroView 1.3.0 開始支持Storyboard/IB
拖拽UIView 到IB文檔
設置它的class爲EAIntroView
建立viewcontroller 的IBOutlet 屬性,@property(nonatomic,weak) IBOutlet EAIntroView *introView;
在IB中連接IBOutlet
和 EAIntroView
建立界面數組(能夠使用」pageWithCustomViewFromNibNamed」),一個的nib對應每一個界面.在setPages方法中將數組傳遞給EAIntroView 屬性.