博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS边练边学--UIScrollView和xib文件实现简单分页+定时器初使用
阅读量:5815 次
发布时间:2019-06-18

本文共 1714 字,大约阅读时间需要 5 分钟。

一、xib文件构成

二、自定义控件类(xib文件与自定义控件类的文件名字相同,并且将xib文件中父类控件的类名改成自定义控件类的名称)

***********自定义控件类需要的属性*************

1 #import 
2 3 @interface ChaosPageView : UIView 4 5 /** 图片数据 */ 6 @property(nonatomic,strong) NSArray *images; 7 /** pageControl的当前页圆点颜色 */ 8 @property(nonatomic,strong) UIColor *currentColor; 9 /** pageControl的其他页圆点的颜色 */10 @property(nonatomic,strong) UIColor *otherColor;11 /** 创建分页控件的类方法的声明 */12 +(instancetype)pageView;13 14 @end

***********自定义控件类的实现*************

1 // 2 //  ChaosPageView.m 3 //  scrollView分页 4 // 5 //  Created by admin on 16/3/9. 6 //  Copyright © 2016年 admin. All rights reserved. 7 // 8  9 #import "ChaosPageView.h"10 11 @interface ChaosPageView () 
// 扩展类12 13 @property (weak, nonatomic) IBOutlet UIScrollView *scrollView;14 @property (weak, nonatomic) IBOutlet UIPageControl *pageControl;15 16 @end17 18 @implementation ChaosPageView19 20 +(instancetype)pageView21 {22 // 从xib中读取控件23 return [[[NSBundle mainBundle] loadNibNamed:NSStringFromClass(self) owner:nil options:nil] lastObject];24 }25 26 #pragma mark - 重写的set方法27 -(void)setImages:(NSArray *)images28 {29 // 重写set方法一定记住先将变量赋值给成员变量30 _images = images;31 32 // 添加之前先清除33 [self.scrollView.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];34 35 for (int i = 0; i
84 -(void)scrollViewDidScroll:(UIScrollView *)scrollView85 {86 // 计算当前页数的方法--用x方向的偏移量除以图片的宽度,结果四舍五入87 // 四舍五入的方法--得到的结果+0.5,然后结果取整88 self.pageControl.currentPage = (int)self.scrollView.contentOffset.x / self.scrollView.frame.size.width + 0.5;89 }90 91 @end

三、定时器的使用

 

*********监听图片的滚动***********

转载于:https://www.cnblogs.com/gchlcc/p/5263892.html

你可能感兴趣的文章
.NET 设计规范--.NET约定、惯用法与模式-2.框架设计基础
查看>>
win7 64位+Oracle 11g 64位下使用 PL/SQL Developer 的解决办法
查看>>
BZOJ1997:[HNOI2010]PLANAR——题解
查看>>
BZOJ1014:[JSOI2008]火星人prefix——题解
查看>>
使用Unity3D引擎开发赛车游戏
查看>>
HTML5新手入门指南
查看>>
淘宝NPM镜像cnpm
查看>>
01-构造和运行模块
查看>>
opennebula 开发记录
查看>>
ubuntu 修改hostname
查看>>
【译】UNIVERSAL IMAGE LOADER.PART 2---ImageLoaderConfiguration详解
查看>>
javascript call()
查看>>
sql 内联,左联,右联,全联
查看>>
C++关于字符串的处理
查看>>
6、Web Service-拦截器
查看>>
面试题: 数据库 oracle数据库 已看1 意义不大 有用
查看>>
Flask 源码流程,上下文管理
查看>>
stream classdesc serialVersionUID = -7218828885279815404, local class serialVersionUID = 1.
查看>>
ffmpeg相关资源
查看>>
ZAB与Paxos算法的联系与区别
查看>>