用到的控件:

1>UIScrollView:宽度和图片的宽度一样,因为分页的代码就一句

// 设置分页,这个分页的原理实际上是按照ScrollView的宽进行分页的,这里的图片的宽由于和ScrollView的宽式一样的所以刚好分页显示图片了

_scrollView.pagingEnabled = YES;

2>UIImageView:用来放图片的

3>UIPageControl,页码显示控件

=======================

关键部分:监听ScrollView的滚动,来告诉页码显;监听的方法:

scrollViewDidScroll  // 实现协议里的监听滚动的方法,这个方法是ScrollView在滚动时,会被调用

全部代码:

#import "CXBViewController.h"

#define pCount 5 // 分页显示的图片张数,或者是页数

@interface CXBViewController () <UIScrollViewDelegate>
{
UIPageControl *_pageControl;
} @end @implementation CXBViewController - (void)viewDidLoad
{
[super viewDidLoad]; // 为scrollView添加图片
// 设置图片的宽和高
CGFloat w = self.view.frame.size.width;
CGFloat h = self.scrollView.bounds.size.height;
for (int i = ; i < pCount; i++) {
UIImageView *imageView = [[UIImageView alloc] init];
// 定义图片名,通过循环把所有的图片添加到scrollView中
NSString *imageName = [NSString stringWithFormat:@"img_%02d", i + ];
imageView.frame = CGRectMake(i*w, , w, h);
imageView.image = [UIImage imageNamed:imageName];
[self.scrollView addSubview:imageView];
} // contentSize的y值为0表示在垂直方向上不做滚动
self.scrollView.contentSize = CGSizeMake(pCount * w, );
// 禁用滚动条,只设置水平方向的滚动条即可,竖直方向的滚动范围是0,所以没必要设置
self.scrollView.showsHorizontalScrollIndicator = NO; // 设置分页,这个分页的原理实际上是按照ScrollView的大小分页的,这里的图片的宽由于和ScrollView的宽式一样的所以刚好分页显示图片了
_scrollView.pagingEnabled = YES; // 添加分页表示符
UIPageControl *pageControl = [[UIPageControl alloc] init];
// 让它居中,就设置center属性
pageControl.center = CGPointMake(w * 0.5, h - );
pageControl.bounds = CGRectMake(, , , );
// 设置显示的点的个数
pageControl.numberOfPages = pCount;
// 禁止点击
pageControl.enabled = NO;
pageControl.pageIndicatorTintColor = [UIColor grayColor];
pageControl.currentPageIndicatorTintColor = [UIColor brownColor];
_pageControl = pageControl;
// 这里添加到view中,不能添加到ScrollView中,否则会随着滚动而消失
[self.view addSubview:pageControl]; // 监听ScrollView的滚动,来告诉页码显示
// 设置代理
_scrollView.delegate = self;
} // 实现协议里的监听滚动的方法,这个方法是ScrollView在滚动时,会被调用
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
// 用contentOffset来计算当前的页码
int pageCount = self.scrollView.contentOffset.x/self.scrollView.bounds.size.width;
_pageControl.currentPage = pageCount; } @end

这个简单的图片分页适合图片较少,在10张以内的;日后的笔记中会进行优化,只用两个UIImageView来循环显示图片即可;

ScrollView图片分页显示-简单的更多相关文章

  1. 【iOS开发-55】图片轮播案例:scrollView的分页、滚动栏、利用代理控制定时器和Page Control以及多线程问题

    案例: (1)用storyboard布局,这里用了三样东西. --UIScrollView就是我们准备存放滚动图片的容器. --Page Control就是控制页数的那几个小点点.能够设置有多少个点. ...

  2. 多页的TIFF图片在aspx页面分页显示

    一.逻辑实现:将数据库中的二进制TIFF图片读出并分页显示在页面上. 1.显示界面 public FrameDimension MyGuid; ; ; public static MemoryStre ...

  3. 如何对sharepoint图片库的文件夹的图片按照时间排序并分页显示

    /// <summary> /// 获取图片库第一层文件夹--根据文件夹名称排序 /// </summary> /// <param name="siteUrl ...

  4. 《ASP.NET1200例》<asp:DataList>分页显示图片

    aspx页面代码 <asp:DataList ID="dlPhoto" runat="server" Height="137px" W ...

  5. TensorFlow与OpenCV,读取图片,进行简单操作并显示

    TensorFlow与OpenCV,读取图片,进行简单操作并显示 1 OpenCV读入图片,使用tf.Variable初始化为tensor,加载到tensorflow对图片进行转置操作,然后openc ...

  6. java web 简单的分页显示

    题外话:该分页显示是用 “表示层-控制层-DAO层-数据库”的设计思想实现的,有什么需要改进的地方大家提出来,共同学习进步. 思路:首先得在 DAO 对象中提供分页查询的方法,在控制层调用该方法查到指 ...

  7. 简单的JSP分页显示

    1.mysql的limit关键字 (DAO) select * from tablename limit startPoint, numberPerPage; tablename 就是要分页显示的那张 ...

  8. JSP分页显示实例(基于Bootstrap)

    首先介绍一款简单利落的分页显示利器:bootstrap-paginator 效果截图: GitHub官方下载地址:https://github.com/lyonlai/bootstrap-pagina ...

  9. IE11部分图片无法显示的兼容办法

    问题描述:写的网页在浏览器中测试兼容问题,FF,Chrome,Edge都完美兼容(包括Edge中的仿真),但是在IE11中却无法显示部分图片,并且报:DOM7009: 无法解码 URL 处的图像 错误 ...

随机推荐

  1. 搭建高性能计算环境(六)、应用软件的安装之lammps

    1,上传需要的软件包lammps-stable.tar.gz. 2,解压缩并进入安装目录 tar xvf lammps-stable.tar.gz cd lammps-30Oct14 3,如果需要re ...

  2. javascritp日期函数总结

    getDate()与getDay()的区别: obj.getDate()返回一个月中的某一天:obj.getDay()返回一个星期中的某一天. getYear()与getFullYear()的区别: ...

  3. FileUpload无法赋值解决方案

    FileUpload无法赋值解决方案 编写人:CC阿爸 2015-1-27 今天在这里,我想与大家一起分享如何处理fileupload控件不能赋值的问题.有兴趣的同学,可以一同探讨与学习一下,否则就略 ...

  4. LevelDB系列之SSTable(Sorted Strings Table)文件

    SSTable是Bigtable中至关重要的一块,对于LevelDb来说也是如此,对LevelDb的SSTable实现细节的了解也有助于了解Bigtable中一些实现细节. 本节内容主要讲述SSTab ...

  5. Eclipse插件推荐:UCDetector: Unnecessary Code Detector

    正如其名,检查不必要的代码. 下载地址为:http://sourceforge.net/projects/ucdetector/files/latest/download?source=files 官 ...

  6. 用VBA计算WPS 表格ET EXCEL中的行数和列数的多重方法

    用VBA计算WPS 表格ET EXCEL中的行数和列数 每种方法中上面的是Excel的行数,下面的是Excel的列数. 方法1: ActiveSheet.UsedRange.Rows.Count Ac ...

  7. How to setup and process Intercompany accounting [AX2012]

    In this post, I will take you through a very simple functionality called  the intercompany accountin ...

  8. How to get the underlying SSRS Report Query, reset query , add your own ranges and execute report [AX2012]

    Below is the small code snippet to get the underlying query of the SSRS report, reset query, prompt ...

  9. SRF之日志和异常

    日志: 日志功能采用log4net实现 log4配置文件在站点目录下的log4net.config. 调用log4写日志的代码如下: log4net.ILog logger = log4net.Log ...

  10. openSUSE13.1 Yast 中所有软件图形化界面无法打开,问题原因: Ruby

    因为使用rvm安装了新的Ruby,而openSUSE13.1的YaST又是用Ruby的.....解决方案暂时没有