本篇文章只是记录了一个自定义UIPageControl 的制作,其实很简单的   源码在底部会奉上链接,还望多多交流,多多支持

首先效果图如下:

首先先做一个UISCrollView

// 建议这样做,可以避免内存的泄露

UIScrollView *scrol = [[UIScrollViewalloc]init];

self.scrol = scrol;

[scrol release];

MyPageControl *page = [[MyPageControlalloc]init];

self.pageControl = page;

[page release];

//  设置UIScrollView的一些属性

self.scrol.frame =CGRectMake(0,5,320,150);

self.scrol.contentSize =CGSizeMake(320*3,150);

self.scrol.showsHorizontalScrollIndicator =NO;

self.scrol.pagingEnabled =YES;

self.scrol.bounces =NO;

self.scrol.delegate =self;

//    这里添加3张图片 做演示用

for (int i = 0; i<3; i++) {

UIImageView *imgv = [[UIImageViewalloc]initWithImage:[UIImageimageNamed:@"default_pic.png"]];

imgv.frame = CGRectMake(i*320,0,320, 150);

[self.scroladdSubview:imgv];

[imgv release];

}

[self.viewaddSubview:self.scrol];

//   添加图片下方的阴影

UIImageView *img_shade = [[UIImageViewalloc]initWithImage:[UIImageimageNamed:@"shade.png"]];

img_shade.frame = CGRectMake(0,135,320, 20);

//   下面才是重点

CGRect rect =CGRectMake(img_shade.center.x-self.pageControl.frame.size.width/2, img_shade.frame.size.height -20,35,20);

self.pageControl.frame = rect;  //    设置坐标

[_pageControlsetCurrentPage:0];//    设置当前显示

[_pageControlsetNumberOfPages:3];//    设置共几张

self.pageControl.backgroundColor = [UIColorclearColor];//    设置背景色为无

[selfsetPageControlPoint];//    这里写了一个方法用来设置图片的颜色,这样做是因为在UIScrollView滑动的时候也能改变颜色

[self.pageControlsetHidesForSinglePage:YES];//    此属性是说明,当只有一个图片的时候也要显示一个点,默认为NO,即不显示一个点

[img_shade addSubview:self.pageControl];

[self.view addSubview:img_shade];

[img_shade release];

源码地址:http://download.csdn.net/detail/zgcrichard/6224757

UIPageControl的一个Demo的更多相关文章

  1. angular开发者吐槽react+redux的复杂:“一个demo证明你的开发效率低下”

    曾经看到一篇文章,写的是jquery开发者吐槽angular的复杂.作为一个angular开发者,我来吐槽一下react+redux的复杂. 例子 为了让大家看得舒服,我用最简单的一个demo来展示r ...

  2. 初识nginx之第一个demo

    商城项目做了一个多月了,想到必须用到负载均衡,简单了解了一下nginx,首先分享第一个demo,五月份上线后,会继续分享一系列相关知识. 在nginx根目录下,用了一个园友的批处理文件nginx.ba ...

  3. springMvc的第一个demo

    1.下载jar包 http://repo.spring.io/libs-release-local/org/springframework/spring/4.2.3.RELEASE/ 2.下载源码 j ...

  4. Android 通知栏Notification的整合 全面学习 (一个DEMO让你完全了解它)

    在android的应用层中,涉及到很多应用框架,例如:Service框架,Activity管理机制,Broadcast机制,对话框框架,标题栏框架,状态栏框架,通知机制,ActionBar框架等等. ...

  5. 如何在WTL和MFC中使用duilib及如何静态使用duilib库!(初级讲解 附带一个Demo)

    关于duilib的历史,我也就不多说了,能看到这篇文章的人都是有一定了解才能找到这个的. 我直接说下对这个库的基本使用吧. 我个人对一些好技术都是比较感兴趣的. 因为个人原因 喜欢接触一个好技术. 所 ...

  6. 白盒测试之gtest第一个demo

    认识gtest工具后,关于它的使用,下面将用一个demo程序演示一下gtest的用法以及成果展示. 一.需要测试的C++代码: #include "myfunction.h" // ...

  7. 在VS中实现webService的一个demo(图解)

    在VS中实现webService的一个demo(图解) 先创建一个web项目,创建好web项目后,添加新建项——web服务 在新建好的web服务文件中写如下代码: 生成当前解决方案. 新建一个winf ...

  8. Cocos2d-x 学习(1)—— 通过Cocos Studio创建第一个Demo

    近期在工作上有了比較大的转变,自学情绪也慢慢高涨,本来一直在研究unity的技术.由于换了工作会開始接触cocos2d-x.但并不意味着停止研究unity,以后有时间还是会继续的. 公司的cocos2 ...

  9. 使用android的mediaplayer做成 一个demo,欢迎测试使用

    附件是为一个定制视频产品而简单的写了一个demo,用来说明android的mediaplayer是如何使用的. http://files.cnblogs.com/guobaPlayer/palyerD ...

随机推荐

  1. php定时输出

    //PHP定时输出 ob_end_flush(); //关闭输出缓冲 set_time_limit(0); //设置最大执行时间为无限制 echo '============开始=========== ...

  2. QTexstStream的操作对象是QIODevice(因此QFile,QBuffer,QProcess,QTcpSocket都可以使用),或者QString

    QTexstStream用于读写纯文本以及HTML,XML等文本格式的文件,此类考虑了Unicode编码与系统本地编码的或其它任意编码之间的转换问题,别且明确地处理了因使用不同的操作系统而导致的行尾符 ...

  3. MVC整个样例的源代码

    以下就是整MVC样例的源代码: #windows应用程序 #开发者:蔡军生(QQ:9073204) 深圳 2014-9-24 #使用类来描写叙述 from ctypes import * from c ...

  4. SecureCRT使用Vim出现中文乱码问题的解决

    1. 首先保证securecrt本身显示中文是ok的.如果不是,就先解决这一个问题. 2. vi ~/.vimrc 添加set encoding=utf-8 fileencodings=ucs-bom ...

  5. android 网络交互

    一. 在Android中,发送和处理http请求实在太常见了,以至于我们经常需要写这方面的代码. Android中网络交互的代码不能在UI线程中执行,只能在额外的子线程中执行. 我一般的做法是通过创建 ...

  6. Robot Framework与Web界面自动化测试学习笔记:简单例子

    假设环境已经搭建好了.这里用RIDE( Robot Framework Test Data Editor)工具来编写用例.下面我们对Robot Framework简称rf. 我们先考虑下一个最基本的登 ...

  7. LifecyclePhaseNotFoundException(转)

    This error is generated if you try to invoke a build command that Maven does not understand. In gene ...

  8. mysql 监控 大批量的插入,删除,和修改

    监控大批量的插入,修改和删除: mysql> insert into aaa select * from aaa; mysql> SELECT trx_id, trx_state, trx ...

  9. JavaScript提高:005:ASP.NET使用easyUI TABS标签显示问题

    前面使用easy ui来实现了一个tabs标签(http://blog.csdn.net/yysyangyangyangshan/article/details/38307477),只是在ASP.NE ...

  10. android获取View上某点的颜色

    //根据坐标获取 ImageView imageView = ((ImageView)v); Bitmap bitmap = ((BitmapDrawable)imageView.getDrawabl ...