Appdelegate.m
//用持久化对象去存储一个字符串作为标识,如果找到标识,说明用户不是第一次登录,就加载主界面,如果找不到,说明用户是第一次登录,加载引导界面.
if (![[NSUserDefaults standardUserDefaults] boolForKey:@"abc"]) {
UserGuideViewController *guideVC = [[UserGuideViewController alloc] init];
self.window.rootViewController = guideVC;
[guideVC release];
}else{
RootViewController *rootVC = [[RootViewController alloc] init];
self.window.rootViewController = rootVC;
[rootVC release];
}
viewController.m
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
//创建scrollView
[self layoutScrollView];
//创建UIImageView
[self layoutImageView];
//创建pageControl
[self layoutPageControl];
}
#pragma mark -布局scrollView
- (void)layoutScrollView{
self.scrollView = [[UIScrollView alloc] initWithFrame:[UIScreen mainScreen].bounds];
self.scrollView.contentSize = CGSizeMake(kScreenWidth * 6, kScreenHeight);
self.scrollView.delegate = self;
self.scrollView.pagingEnabled = YES;
self.scrollView.showsHorizontalScrollIndicator = NO;
self.scrollView.showsVerticalScrollIndicator = NO;
[self.view addSubview:self.scrollView];
[self.scrollView release];
}
#pragma mark -布局图片
- (void)layoutImageView{
for (int i = 0; i < 6; i++) {
UIImageView *imageV = [[UIImageView alloc] initWithFrame:CGRectMake(kScreenWidth * i, 0, kScreenWidth, kScreenHeight)];
NSString *imageName = [NSString stringWithFormat:@"v6_guide_%d", i + 1];
NSString *filePath = [[NSBundle mainBundle] pathForResource:imageName ofType:@"png"];
imageV.image = [UIImage imageWithContentsOfFile:filePath];
//判断如果图片是最后一张,给其添加轻拍手势
if (i == 5) {
imageV.userInteractionEnabled = YES;
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)];
[imageV addGestureRecognizer:tap];
}
[self.scrollView addSubview:imageV];
}
}
#pragma mark - TapAction
- (void)handleTap:(UITapGestureRecognizer *)tap{
//1.将字符串持久化存储
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"abc"];
//立刻同步(立刻存储)
[[NSUserDefaults standardUserDefaults] synchronize];
//2.进入主界面
RootViewController *rootVC = [[RootViewController alloc] init];
[UIApplication sharedApplication].keyWindow.rootViewController = rootVC;
[rootVC release];
}
#pragma mark -布局pageControl
- (void)layoutPageControl{
self.pageControl = [[UIPageControl alloc] initWithFrame:CGRectMake((kScreenWidth - 120) / 2, 580, 120, 20)];
self.pageControl.numberOfPages = 6;
self.pageControl.pageIndicatorTintColor = [UIColor cyanColor];
self.pageControl.currentPageIndicatorTintColor = [UIColor redColor];
[self.pageControl addTarget:self action:@selector(handlePageControl:) forControlEvents:UIControlEventValueChanged];
self.pageControl.currentPage = 0;
[self.view addSubview:self.pageControl];
[self.pageControl release];
}
- (void)handlePageControl:(UIPageControl *)pageControl{
[self.scrollView setContentOffset:CGPointMake(pageControl.currentPage * kScreenWidth, 0) animated:YES];
}
#pragma mark - UIScrollViewDelegate
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
self.pageControl.currentPage = scrollView.contentOffset.x / kScreenWidth;
}