IOS 欢迎页(UIScrollView,UIPageControl)
本文介绍了app欢迎页的简单实现。只有第一次运行程序时才说会出现,其余时间不会出现。下面是效果图。

代码如下:(如有不明白的可以评论我,我会详细讲解)
//
// ViewController.m
// CX IOS欢迎页
//
// Created by ma c on 16/3/18.
// Copyright © 2016年 xubaoaichiyu. All rights reserved.
// #import "ViewController.h" @interface ViewController ()<UIScrollViewDelegate> @property (nonatomic, strong) UIScrollView * scrollView;
@property (nonatomic, strong) UIPageControl * pageControl; @end @implementation ViewController
#pragma mark - life
- (void)viewDidLoad {
[super viewDidLoad];
//判断是否是第一次运行程序
NSUserDefaults * userDefaults = [NSUserDefaults standardUserDefaults];
// [userDefaults removeObjectForKey:@"FirstLoad"];
if ([userDefaults objectForKey:@"FirstLoad"] == nil) {
[userDefaults setBool:NO forKey:@"FirstLoad"];
[self loadScrollView];
} }
#pragma mark - deleDate -(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{ CGPoint point = self.scrollView.contentOffset; NSInteger current = point.x / self.view.frame.size.width; self.pageControl.currentPage = current; } #pragma mark - function
-(void)loadScrollView{ CGRect rect = [UIScreen mainScreen].bounds; self.scrollView = [[UIScrollView alloc]initWithFrame:rect];
//分页
self.scrollView.pagingEnabled = YES; self.scrollView.delegate = self; self.scrollView.showsHorizontalScrollIndicator = NO; self.scrollView.showsVerticalScrollIndicator = NO;
//scrollView滚动区域大小
self.scrollView.contentSize = CGSizeMake(rect.size.width * , rect.size.height); for (NSInteger i = ; i < ; i ++) { UIImageView * imageView = [[UIImageView alloc]init]; imageView.frame = CGRectMake(i * rect.size.width, , rect.size.width, rect.size.height);
//为了区别imageView而又简单操作,建立随机颜色。
imageView.backgroundColor = [UIColor colorWithRed:arc4random() % / .f green:arc4random() % / .f blue:arc4random() % / .f alpha:];
[self.scrollView addSubview:imageView]; //添加开启软件
UIButton * removeBUtton = [UIButton buttonWithType:UIButtonTypeCustom]; removeBUtton.frame = CGRectMake( + * rect.size.width, rect.size.height * 0.7, rect.size.width - , ); [removeBUtton setTitle:@"开启旅行" forState:UIControlStateNormal]; [removeBUtton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; removeBUtton.backgroundColor = [UIColor orangeColor]; [removeBUtton addTarget:self action:@selector(start) forControlEvents:UIControlEventTouchUpInside]; [self.scrollView addSubview:removeBUtton];
} [self.view addSubview:self.scrollView]; [self loadPageControl]; } -(void)start{ [self.pageControl removeFromSuperview]; [self.scrollView removeFromSuperview]; }
-(void)loadPageControl{ CGRect rect = [UIScreen mainScreen].bounds; self.pageControl = [[UIPageControl alloc]init]; self.pageControl.numberOfPages = ; CGSize pageControlSize = [self.pageControl sizeForNumberOfPages:]; self.pageControl.frame = CGRectMake((rect.size.width - pageControlSize.width) / , rect.size.height * 0.8, pageControlSize.width, pageControlSize.height); self.pageControl.currentPage = ; self.pageControl.currentPageIndicatorTintColor = [UIColor greenColor]; self.pageControl.pageIndicatorTintColor = [UIColor grayColor]; [self.view addSubview:self.pageControl]; [self.view bringSubviewToFront: self.pageControl]; }
@end
IOS 欢迎页(UIScrollView,UIPageControl)的更多相关文章
- IOS初级:UIScrollView & UIPageControl
UIScrollView其实构建的就像一列很长的火车,每滑动一个屏幕,展示一节车厢. //主屏幕高度 #define kScreenHeight [UIScreen mainScreen].bound ...
- 【iOS系列】-UIScrollView的介绍及结合UIPageControl实现图片播放的实例
[iOS系列]-UIScrollView的介绍及结合UIPageControl实现图片播放的实例 第一:UIScrollView的常用属性 //表示UIScrollView内容的尺寸,滚动范围 @pr ...
- UIScrollView,UIPageControl
#import <UIKit/UIKit.h> @interface ViewController : UIViewController<UIScrollViewDelegate&g ...
- iOS纯代码制作欢迎界面——UIScrollView, UIPageControl, UIImageView,UIButton, NSTimer
欢迎界面,还是比较简单的,一个UIScrollView控件,一个UIPageControl,几个UIImageView即可摆平.在这里光玩这些,就显得诚意不足了.特意拓展一下,再加几个UIButton ...
- IOS 怎么用UIScrollView来滚动和缩放他的内容第一篇
本篇文章来自于互联网资料翻译 UIScrollView是在IOS最有用的控件之一.他是一个来展现超过一个屏幕的内容的很好的方式.下面有很多的技巧来使用他. 这篇文章就是关于UIScrollView的, ...
- iOS新手引导页的实现,源码。
/*.在Main.storyboard中找到,ScrollView和PageControl并添加到ViewController中. .在ScrollView中添加ImageView,新手引导页有几个图 ...
- UIScrollView,UIPageControl,UIImageView 实现图片轮播的效果
上一篇博客介绍了如何将XCode创立的项目提交到Git版本控制,这次就直接做一个图片轮播的展示demo,刚好可以把UIScrollView.UIPageControl.UIImageView这三个控件 ...
- 启动图实现:UIScrollView+UIPageControl简单实现
#import "MJViewController.h"#import "RootViewController.h" @interface MJViewCont ...
- iOS学习之UIScrollView
一.UIScrollView的创建和常用属性 1.UIScrollView概述 UIScrollView是UIView的子类. UIScrollView作为所有滚动视图的基类. UIScro ...
随机推荐
- 用C#实现修改网页数据
背景 由于某宝最近升级,导致朋友买的刷单软件不能用了:在又付过钱之后,那个刷单软件供应商竟然捐款跑路了...于是,朋友委托我做一个功能一样的软件.功能 他给我描述的软件功能,是这个样子的: ...
- 构造Lambda表达式
/// <summary> /// 构造Lambda表达式 /// </summary> /// <typeparam name="T">< ...
- ruby -- 进阶学习(七)strong parameters之permitted.has_key
简单例子: params = ActionController::Parameters.new(user: { name: 'Francesco', age: 22, role: 'admin' }) ...
- web.config中httpRunTime的属性
配置httpRuntime也可以让FileUpload上传更大的文件,不过设置太大了会因用户将大量文件传递到该服务器而导致的拒绝服务攻击(属性有说明) <httpRuntime> < ...
- 网站跨站点单点登录实现--cookie
至于什么是单点登录,举个例子,如果你登录了msn messenger,访问hotmail邮件就不用在此登录.一般单点登录都需要有一个独立的登录站点,一般具有独立的域名,专门的进行注册,登录,注销等操作 ...
- selenium webdriver (python) 第二版
前言 对于大多软件测试人员来讲缺乏编程经验(指项目开发经验,大学的C 语言算很基础的编程知识)一直是难以逾越的鸿沟,并不是说测试比开发人员智商低,是国内的大多测试岗位是功能测试为主,在工作时间中,我们 ...
- CSS布局 -- 左侧定宽,右侧自适应
左侧定宽,右侧自适应 有很多种方法可以实现 缩小窗口试试看? 方案一: 左边左浮动,右边加个margin-left 查看 demo <!DOCTYPE html PUBLIC "-// ...
- Dir /U /c 输出Unicode字符的特性
比如某个目录列表如下: D:\Spec\a.txtD:\Spec\Dir・C.txtD:\Spec\else.txtD:\Spec\קתקווה.dataD:\Spec\中・文.txt 直接dir / ...
- .net C# 对虚拟目录IIS的操作
一.查看虚拟目录是否存在 private bool IsExitesVirtualDir(string virtualdirname) { bool exited =false; Dire ...
- 快捷获取浏览器(navigator对象)的全部属性
理论: navigator对象包含关于web浏览器的信息,浏览器的类型,版本信息都可以从该对象获取. 属性 说明 appCodeName 浏览器代码说明 appName 浏览器名称 appVe ...