iOS引导页
来源:互联网 发布:window c语言编译器 编辑:程序博客网 时间:2024/06/05 21:07
每个客户端都会有自己的引导页,启动app时,通过引导页简单介绍客户端的个性化功能。
好了废话不多说,直接上代码:
AppDelegate.h文件:
#import "AppDelegate.h"#import "GuideVC.h"#import "ViewController.h"@interface AppDelegate ()@end@implementation AppDelegate- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after application launch. ViewController *vc = [[ViewController alloc] init]; self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; if([GuideVC everLaunched] == NO)//启动引导页 { GuideVC *tGV = [[GuideVC alloc]init]; self.window.rootViewController = tGV; [self.window makeKeyAndVisible]; return YES; }else{ self.window.rootViewController = vc; } [self.window makeKeyAndVisible]; return YES;}
GuideVC.m代码:
#import "GuideVC.h"#import "AppDelegate.h"#import "ViewController.h"#define Main_Screen_Width [UIScreen mainScreen].bounds.size.width#define Main_Screen_Height [UIScreen mainScreen].bounds.size.height#define totalCounts 7 //引导页数量#define EVER_LAUNCHED @"GuideVC_EVER_LAUNCHED"@interface GuideVC ()<UIScrollViewDelegate>@property (strong, nonatomic) UIScrollView *pageScroll;@property (strong, nonatomic) UIPageControl *pageControl;@end@implementation GuideVC- (void)viewDidLoad { [super viewDidLoad]; [[NSUserDefaults standardUserDefaults]setBool:YES forKey:EVER_LAUNCHED]; [[NSUserDefaults standardUserDefaults]synchronize]; [self createScrollView];}/** * 创建显示引导图片ScrollView */-(void)createScrollView{ self.pageScroll = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, Main_Screen_Width, Main_Screen_Height)]; self.pageScroll.pagingEnabled = YES; self.pageScroll.delegate = self; self.pageScroll.contentSize = CGSizeMake(Main_Screen_Width * totalCounts, Main_Screen_Height); self.pageScroll.backgroundColor = [UIColor groupTableViewBackgroundColor]; self.pageScroll.showsHorizontalScrollIndicator = NO; self.pageScroll.showsVerticalScrollIndicator = YES; [self.view addSubview:self.pageScroll]; /** 添加引导图片 */ [self AddGuideImg]; CGFloat w = 100; CGFloat h = 20; self.pageControl = [[UIPageControl alloc]init]; [self.pageControl setFrame:CGRectMake((Main_Screen_Width-w)/2, Main_Screen_Height-30, w, h)]; self.pageControl.numberOfPages = totalCounts; //设置引导页有几个界面 self.pageControl.currentPage = 0; self.pageControl.tintColor = [UIColor lightGrayColor]; [self.view addSubview:self.pageControl]; }/** * 添加引导图片 */-(void)AddGuideImg{ for (int i=0; i<totalCounts; i++) { UIImageView* imageView = [[UIImageView alloc] initWithFrame:CGRectMake(i*Main_Screen_Width, 0, Main_Screen_Width, Main_Screen_Height)]; NSString* imageNameStr =[NSString stringWithFormat:@"Guide%i.jpg",i+1];//设置引导页图片 imageView.image = [UIImage imageNamed:imageNameStr]; if (i == totalCounts-1) { /** 最后一张图片添加按钮 */ [imageView setUserInteractionEnabled:YES]; UIButton* start = [UIButton buttonWithType:UIButtonTypeCustom]; UIImage* startBtnImg = [UIImage imageNamed:@"btn"]; [start setImage:startBtnImg forState:UIControlStateNormal]; [start setFrame:CGRectMake(20,Main_Screen_Height-100,Main_Screen_Width - 20*2,60)]; start.layer.borderWidth = 5; start.layer.borderColor = [UIColor whiteColor].CGColor; [start setTitle:@"朕已阅" forState:UIControlStateNormal]; [start addTarget:self action:@selector(gotoMainView) forControlEvents: UIControlEventTouchUpInside]; [imageView addSubview:start]; } [self.pageScroll addSubview:imageView]; } }/** 跳转到首页(登录页) */-(void)gotoMainView{ ViewController *vc = [[ViewController alloc] init]; [self presentViewController:vc animated:YES completion:nil];}#pragma mark - UIScrollViewDelegate#pragma mark-(void)scrollViewDidScroll:(UIScrollView *)scrollView{ CGFloat pageWidth = self.view.frame.size.width; int page = floor((scrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1; self.pageControl.currentPage = page;}+(BOOL)everLaunched{ return [[NSUserDefaults standardUserDefaults]boolForKey:EVER_LAUNCHED];}
Demo:https://github.com/ruiruiguo/GuideVC1.git
我的博客地址:http://blog.csdn.net/baidu_25743639
0 0
- iOS引导页
- iOS-引导页
- ios用户引导页
- iOS 引导页
- iOS引导页
- ios引导页图片尺寸
- iOS启动引导页
- iOS 引导页
- iOS 引导页
- iOS引导页-初
- iOS 自定义引导页
- iOS引导页
- iOS引导页
- iOS引导页
- iOS引导页
- ios 引导页/半透明引导页做法
- iOS引导页、启动页
- ios开发-引导页实现
- uart和usart的关系
- nodejs express框架 app.js文件该html模板
- C语言位域
- VS2012 中个人的使用小结
- [李景山php]每天TP5-20161227|thinkphp5-Console.php-4
- iOS引导页
- stm32配置串口步骤
- nodejs 增删该查操作数据库(routes文件夹下的users.js)
- 每天一个linux命令(3):pwd命令
- 利用valgrind 查找内存泄漏
- 无线网络优化管理面试题和笔试题
- Dubbo2.3.2中restart.sh源码
- 当ListView有Header时,onItemClick里的position不正确的解决方案
- 解决因linux系统IP自动改变,oracle监听无法启动的问题