一、基本知识

#import "ViewController.h"
@interface ViewController ()<UIScrollViewDelegate>{
    UIScrollView *scrollview;
    UIPageControl *page;
}

@end
@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    page = [[UIPageControl alloc]initWithFrame:CGRectMake(20, 150, 200, 30)];
    page.backgroundColor = [UIColor yellowColor];
    page.numberOfPages = 10;//设置页数(多少个点)
    page.currentPage = 0;//设置当前选中页
    NSLog(@"%zi",page.currentPage);//获取当前选中页下标
    page.pageIndicatorTintColor = [UIColor greenColor];//未选中颜色
    page.currentPageIndicatorTintColor = [UIColor redColor];//当前选中的颜色
    [page addTarget:self action:@selector(change:) forControlEvents:UIControlEventValueChanged];
   
    [self.view addSubview:page];
   
    scrollview = [[UIScrollView alloc]initWithFrame:CGRectMake(20, 150, 300, 400)];
    scrollview.contentSize = CGSizeMake(900, 0);
    scrollview.delegate = self;
    scrollview.pagingEnabled = YES;
    [self.view addSubview:scrollview];
   
    UIView *view = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 300, 400)];
    view.backgroundColor = [UIColor grayColor];
    [self.view addSubview:view];
   
    UIView *view1 = [[UIView alloc]initWithFrame:CGRectMake(300, 0, 300, 400)];
    view1.backgroundColor = [UIColor blackColor];
    [self.view addSubview:view1];
   
    UIView *view2 = [[UIView alloc]initWithFrame:CGRectMake(600, 0, 300, 400)];
    view2.backgroundColor = [UIColor yellowColor];
    [self.view addSubview:view2];
   
}

-(void)change:(id)pc{
    NSLog(@"%zi",[pc currentPage]);//获取页数
    CGPoint p = {[pc currentPage]*300,0};//
    [scrollview setContentOffset:p animated:YES];//允许动画
   
}

-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
    int index =  scrollview.contentOffset.x/scrollview.frame.size.width;
    page.currentPage = index;

}

UIPageControl页控制器的更多相关文章

  1. Swift - 标签条(UITabBar)标签页控制器(UITabBarController)用法

    App底部的tab标签页可以方便的把功能模块划分清楚,只需点击相应的标签页就可以展示完全独立的视图页面,同时各标签页间的视图也可以进行数据交换.   TabBarItem系统自带图标样式(System ...

  2. swift:简单使用翻页控制器UIPageViewController

    一.小叙 UIPageViewController是一个实现图书阅读的控制器,使用它可以设置书脊位置.单双页.过渡效果等,它是通过代理的方式来实现翻页,也即上一页.下一页.最终这个UIPageView ...

  3. iOS:UIPageViewController翻页控制器控件详细介绍

    翻页控制器控件:UIPageViewController 介绍: 1.它是为我们提供了一种类似翻书效果的一种控件.我们可以通过使用UIPageViewController控件,来完成类似图书一样的翻页 ...

  4. iOS:UI系列之UIScrollview和UIPagecontrol

    转眼间,又是一天,就这样忙忙碌碌的一天一天的过着, 不过还好,不是浑浑噩噩的,也算是小有所成,劳有所获吧,嘿嘿! 好了,到了总结的时间啦, 下面就为大家简单讲解下我今天学习的内容吧,希望对各位都有所帮 ...

  5. ASP.NET MVC 5 学习教程:通过控制器访问模型的数据

    原文 ASP.NET MVC 5 学习教程:通过控制器访问模型的数据 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连 ...

  6. ASP.NET MVC 5 学习教程:控制器传递数据给视图

    原文 ASP.NET MVC 5 学习教程:控制器传递数据给视图 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字 ...

  7. ASP.NET MVC 5 学习教程:修改视图和布局页

    原文 ASP.NET MVC 5 学习教程:修改视图和布局页 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 ...

  8. ASP.NET MVC 5 学习教程:添加控制器

    原文 ASP.NET MVC 5 学习教程:添加控制器 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过 ...

  9. SSM+Maven+MySQL实现简易的挂机修仙页游

    一段时间没有写过SSM的项目了,最近重新整合框架做了一个小Demo 学Java的萌新可以看一看:大佬呢,欢迎指出不足! 我一直钟爱挂机类游戏,同时也喜欢修仙和武侠小说,于是突发奇想,自己搞一个小游戏? ...

随机推荐

  1. Eclipse/MyEclipse怎么设置个性化代码注释模板

    1.打开Eclipse/MyEclipse工具,打开或创建一个Java工程,点击菜单Window->Preferences弹出首选项设置窗口 2.展开左侧Java->Code Style- ...

  2. Windows 7 下如何设置机器级别的DCOM权限

    Windows 7 下如何设置机器级别的DCOM权限 To grant Remote Activation permissions to the SMS Admins group From the S ...

  3. RMQ(范围最值问题)算法学习

    RMQ算法适合求解对一个数组多次查询给定范围内的最值. 预处理操作: 令d[i,j]表示从i开始,长度为2^j的一段元素的最值,可以用递推公式写出d[i,j] = min{ d[i][j-1], d[ ...

  4. for 循环

    #include <iostream> int main(){ ; ; val <= ; ++val) { sum += val; } std::cout << &quo ...

  5. Android菜鸟成长记2-内部类

    Java内部类 内部类是指在一个外部类的内部再定义一个类.类名不需要和文件夹相同.       内部类可以是静态static的,也可用public,default,protected和private修 ...

  6. 【Jquery mobile】动态加载ListView 转

    [Jquery mobile]动态加载ListView 分类: Jquery Mobile2011-12-01 09:04 13984人阅读 评论(1) 收藏 举报 jquerylistviewmob ...

  7. 禅道Linux一键安装版

    禅道Linux一键安装版 Linux一键安装包内置了apache, php, mysql这些应用程序,只需要下载解压缩即可运行禅道.从7.3版本开始,linux一键安装包分为32位和64位两个包,大家 ...

  8. OutSystems学习一,安装以及入门

    官方网站:http://www.outsystems.com/home/HomePage.aspx 安装完成后,在官网申请自己的管理云平台 启动客户端 详细参考帮助,跟着走就行

  9. java 小知识

    public static void main(String[] args) { System.out.println( getMonthStart()); System.out.println( g ...

  10. python-->基础-->003->字符串处理

    一.去除字符串首尾白空格 说明:即为去除字符串的首尾(即头部和尾部)的白空格(空格本身,回车\r,换行\n,制表符\t, 换页符\f ) 实例: str01 = ' abc def # ' print ...