iOS新手引导页的实现,源码。-阿里云开发者社区

开发者社区> 红角羚羊> 正文

iOS新手引导页的实现,源码。

简介: 1 /*1.在Main.storyboard中找到,ScrollView和PageControl并添加到ViewController中。 2 2.在ScrollView中添加ImageView,新手引导页有几个图片就添加几个,然后设置ImageView的image,就是准备好的图片。
+关注继续查看
 1 /*1.在Main.storyboard中找到,ScrollView和PageControl并添加到ViewController中。
 2 2.在ScrollView中添加ImageView,新手引导页有几个图片就添加几个,然后设置ImageView的image,就是准备好的图片。
 3 3.要设置好ScrollViewscroll View中的Left和View中的Width,使其等于图片的大小,还有就是图片大小的起始位置,第一张为(00),第二张的起始位置应该是(屏幕的宽度,0),以此类推。
 4 4.添加PageControl,这个的起始位置要手动的设置。
 5 5.设置同步*/
 6 //设置UIPageControl跟随UIScrollView的变化而变化
 7 -(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
 8     _pc1.currentPage = scrollView.contentOffset.x / 424;
 9 }
10 //要使UIScrollView跟随UIPageControl变化的话,必须加监听,要写一个方法
11 -(void)changeScrollView:(UIPageControl *)uip1
12 {
13      [_sv1 setContentOffset:CGPointMake(424 * uip1.currentPage, 0) animated:YES];
14 }
15 
16 源码:
17 
18 #import "ViewController.h"
19 
20 @interface ViewController ()
21 @property (weak, nonatomic) IBOutlet UIScrollView *sv1;
22 @property (weak, nonatomic) IBOutlet UIPageControl *pc1;
23 
24 @end
25 
26 @implementation ViewController
27 
28 - (void)viewDidLoad {
29     [super viewDidLoad];
30     //必须手动设置内容视图的大小
31 ​    _sv1.contentSize = CGSizeMake(424*3,736);
32     //是否分页
33     _sv1.pagingEnabled = YES;
34     //滚动时是否显示水平滚动条
35     _sv1.showsHorizontalScrollIndicator = NO;
36     //滚动时是否显示垂直滚动条
37     _sv1.showsVerticalScrollIndicator=NO;
38     //为了设置UIPageControl,要用到代理方法判断是否移动
39     _sv1.delegate = self;
40     //要使UIScrollView跟随UIPageControl变化的话,必须加监听,要写一个方法
41     [_pc1 addTarget:self action:@selector(changeScrollView:) forControlEvents: UIControlEventTouchUpInside];
42 }
43 //设置UIPageControl跟随UIScrollView的变化而变化
44 -(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
45     _pc1.currentPage = scrollView.contentOffset.x / 424;
46 }
47 //要使UIScrollView跟随UIPageControl变化的话,必须加监听,要写一个方法
48 -(void)changeScrollView:(UIPageControl *)uip1
49 {
50      [_sv1 setContentOffset:CGPointMake(424 * uip1.currentPage, 0) animated:YES];
51 }
52 - (void)didReceiveMemoryWarning {
53     [super didReceiveMemoryWarning];
54     // Dispose of any resources that can be recreated.
55 }
56 
57 @end

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Glide 阅读源码解疑
转载请标明地址 QuincySx: http://www.jianshu.com/p/e8adc9581f69 问题不定时更新,如果你也有问题欢迎在评论区提出 Glide 是如何拓展不同的资源获取器的 在 manifest 文件中 添加 m...
857 0
OPC Client 核心源码
好像技术一沾上工业,便有了很高的价值,大家三缄其口,谁都不点破这层窗户纸,好多的思路和源码都要从国外网站获得,国内总是有条件,有限制--就是不告诉你,怕教会徒弟,饿死师父吧。
718 0
源码分析 RocketMQ DLedger 多副本之 Leader 选主
本文将按照《RocketMQ 多副本前置篇:初探raft协议》的思路来学习RocketMQ选主逻辑。首先先回顾一下关于Leader的一些思考: 节点状态需要引入3种节点状态:Follower(跟随者)、Candidate(候选者),该状态下的节点会发起投票请求,Leader(主节点)。
2206 0
Spring IOC 容器源码分析
原文出处:https://javadoop.com/post/spring-ioc Spring 最重要的概念是 IOC 和 AOP,本篇文章其实就是要带领大家来分析下 Spring 的 IOC 容器。
700 0
hyperledger fabric 源码调试(orderer)环境搭建教程
本系列文尝试依据个人理解来描述构建fabric源码调试环境的步骤,去掉docker这层障碍,并给出思考过程。
1654 0
源码分析Node的Cluster模块
### 从源码分析Node的Cluster模块 前段时间,公司的洋彬哥老哥遇到一个问题,大概就是本机有个node的http服务器,但是每次请求这个服务器的端口返回的数据都报错,一看返回的数据根本不是http的报文格式,然后经过一番排查发现是另外一个服务器同时监听了http服务器的这个端口。这个时候洋彬老哥就很奇怪,为啥我这个端口明明使用了,却还是可以启动呢?这个时候我根据以前看libuv源码
4336 0
直播系统的顶梁柱:视频直播源码中的礼物功能
我们了解的直播系统功能是十分的实用且丰富的,一般来说,视频直播源码自带的功能有:直播功能、私信功能、邀请奖励、财务管理功能、短视频功能、直播PK功能、多种礼物功能、分享功能、拉黑功能、带货商城功能、家族功能、标签功能、评论功能等等实质性的功能,今天就针对礼物功能来做一下详细的介绍。
113 0
+关注
53
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载