UIPageControl的一个Demo
本篇文章只是记录了一个自定义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的更多相关文章
- angular开发者吐槽react+redux的复杂:“一个demo证明你的开发效率低下”
曾经看到一篇文章,写的是jquery开发者吐槽angular的复杂.作为一个angular开发者,我来吐槽一下react+redux的复杂. 例子 为了让大家看得舒服,我用最简单的一个demo来展示r ...
- 初识nginx之第一个demo
商城项目做了一个多月了,想到必须用到负载均衡,简单了解了一下nginx,首先分享第一个demo,五月份上线后,会继续分享一系列相关知识. 在nginx根目录下,用了一个园友的批处理文件nginx.ba ...
- springMvc的第一个demo
1.下载jar包 http://repo.spring.io/libs-release-local/org/springframework/spring/4.2.3.RELEASE/ 2.下载源码 j ...
- Android 通知栏Notification的整合 全面学习 (一个DEMO让你完全了解它)
在android的应用层中,涉及到很多应用框架,例如:Service框架,Activity管理机制,Broadcast机制,对话框框架,标题栏框架,状态栏框架,通知机制,ActionBar框架等等. ...
- 如何在WTL和MFC中使用duilib及如何静态使用duilib库!(初级讲解 附带一个Demo)
关于duilib的历史,我也就不多说了,能看到这篇文章的人都是有一定了解才能找到这个的. 我直接说下对这个库的基本使用吧. 我个人对一些好技术都是比较感兴趣的. 因为个人原因 喜欢接触一个好技术. 所 ...
- 白盒测试之gtest第一个demo
认识gtest工具后,关于它的使用,下面将用一个demo程序演示一下gtest的用法以及成果展示. 一.需要测试的C++代码: #include "myfunction.h" // ...
- 在VS中实现webService的一个demo(图解)
在VS中实现webService的一个demo(图解) 先创建一个web项目,创建好web项目后,添加新建项——web服务 在新建好的web服务文件中写如下代码: 生成当前解决方案. 新建一个winf ...
- Cocos2d-x 学习(1)—— 通过Cocos Studio创建第一个Demo
近期在工作上有了比較大的转变,自学情绪也慢慢高涨,本来一直在研究unity的技术.由于换了工作会開始接触cocos2d-x.但并不意味着停止研究unity,以后有时间还是会继续的. 公司的cocos2 ...
- 使用android的mediaplayer做成 一个demo,欢迎测试使用
附件是为一个定制视频产品而简单的写了一个demo,用来说明android的mediaplayer是如何使用的. http://files.cnblogs.com/guobaPlayer/palyerD ...
随机推荐
- 多玩YY聊天记录解析全过程
再来一发,现在开始! 下载安装YY,观察YY目录,很明显的发现了sqlite3.dll,这个数据库很多很多很多软件都在用,简单小巧且开源.删除sqlite3.dll 进入YY,历史记录不能正常显示,基 ...
- C语言实现单链表的逆置
单链表的逆置是一个非常经典的问题,这里利用两个思想进行解决. 首先,我们需要看下原理图,其实两个思想都是一样的,都是使后一个的节点的 next 指针指向前一个节点,依次递推,直 ...
- linux查看端口和进程
查看进程 ps -aux | grep appname 杀死进程 kill pid 查看端口: netstat -ap | grep 端口号 netstat -ap | grep 进程名字 lsof ...
- pyfits 读取bintable
import pyfits as pf import numpy as np import math import pandas as pd import matplotlib.pyplot as p ...
- HDOJ1728 BFS【STL__queue_的应用】
STL__queue_的应用 调用的时候要有头文件: #include<stdlib.h> 或 #include<cstdlib> + #include<queue> ...
- ZOJ 3607贪心算法
http://blog.csdn.net/ffq5050139/article/details/7832991 http://blog.watashi.ws/1944/the-8th-zjpcpc/ ...
- asp.net core 使用 Redis 和 Protobuf
asp.net core 使用 Redis 和 Protobuf 前言 上篇博文介绍了怎么样在 asp.net core 中使用中间件,以及如何自定义中间件.项目中刚好也用到了Redis,所以本篇就介 ...
- Tomcat与web程序结构与Http协议
telnet 一:打开telnet服务: 控制面板------> 程序和功能---> 打开或关闭windows功能---> 选中 Telnet客户端--->确定 二:测试tel ...
- Java--Http向服务端提交字条串数据
package com.joye3g.http; import java.io.BufferedReader; import java.io.DataOutputStream; import java ...
- Android Drawable 与 LayerList综合汇总
先看需求.要求这样的效果 上代码 <?xml version="1.0" encoding="utf-8"? > <layer-list xm ...