#import <UIKit/UIKit.h>

@interface ViewController : UIViewController<UIScrollViewDelegate>

@end

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {

[super viewDidLoad];

//组成

//上面 一个scrolview,一个addlable

//中间一个pagecontrol

//下面一个myScrollview一个remove按钮

self.view.backgroundColor=[UIColor greenColor];

/***************UIScrollView*********************************/

UIScrollView *scrolview=[[UIScrollView alloc]initWithFrame:CGRectMake(20, 20, 280, 180)];//高度等于图片高度,宽度小于图片宽度

scrolview.backgroundColor=[UIColor blueColor];

scrolview.contentSize=CGSizeMake(770, 180);//有效的显示范围小于图片,图片不完全显示

UIImageView *imageview=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 770, 180)];

imageview.image=[UIImage imageNamed:@"zhizhu"];

imageview.backgroundColor=[UIColor yellowColor];

[scrolview  addSubview:imageview];

[self.view addSubview:scrolview];

UILabel *addlable=[[UILabel alloc]initWithFrame:CGRectMake(310, 150, 160, 30)];

addlable.text=@"啊,多么美得一幅画!";

[scrolview addSubview:addlable];

scrolview.pagingEnabled=YES;//分页显示的效果

[scrolview setContentOffset:CGPointMake(250, 0) animated:YES];//加载后横向滚动300像素

scrolview.scrollEnabled=YES;//是否可以滚动的属性

scrolview.userInteractionEnabled=YES;//设置交互的属性

scrolview.showsHorizontalScrollIndicator=YES;

scrolview.showsVerticalScrollIndicator=YES;//设置滚动条是否显示

scrolview.bounces=NO;//设置边界的反弹效果,滚到边界将不再滚动

//添加下面的myScrollview

int weigth=700*280/1066;

UIScrollView *myScrollview=[[UIScrollView    alloc]initWithFrame:CGRectMake(50, 250,weigth, 280)];//显示框大小

myScrollview.tag=121;

myScrollview.backgroundColor=[UIColor redColor];

myScrollview.contentSize=CGSizeMake(weigth*5, 280);//有效显示区域

myScrollview.delegate=self;//添加代理

//添加图片组

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

UIImageView *imageview1=[[UIImageView    alloc]initWithFrame:CGRectMake(weigth*i, 0, weigth, 280)];

NSString *imageName=[NSString stringWithFormat:@"%d.jpg",i+1];

imageview1.image=[UIImage imageNamed:imageName];

[myScrollview addSubview:imageview1];

}

//最后一页添加一个按钮

UIButton *remove=[UIButton buttonWithType:UIButtonTypeCustom];

remove.frame=CGRectMake(weigth*4+(weigth-100)/2, 220, 100, 35);//设置按钮位置,可以随页面移动

remove.backgroundColor=[UIColor orangeColor];

[remove setTitle:@"开始体验" forState:UIControlStateNormal];

[remove addTarget:self action:@selector(doRemoveScrollView:) forControlEvents:UIControlEventTouchUpInside];//添加事件

[myScrollview addSubview:remove];//添加按钮

myScrollview.pagingEnabled=YES;//按页翻动

[self.view addSubview:myScrollview];

//添加pagecontrol小白点,每个小白点一个页数

UIPageControl *pagecontrol=[[UIPageControl   alloc]initWithFrame:CGRectMake(0, 210, 320, 30)];

pagecontrol.tag=122;

pagecontrol.backgroundColor=[UIColor blueColor];

[pagecontrol addTarget:self action:@selector(pageControlSelector:) forControlEvents:UIControlEventValueChanged];//添加事件

pagecontrol.numberOfPages=5;//控制显示的页数

pagecontrol.currentPage=0;//默认显示第几页;

[self.view addSubview:pagecontrol];

}

//每次scrollView变化后小白点位置变化

-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView

{

UIPageControl *pagec=(UIPageControl *)[self.view viewWithTag:122];

CGPoint point1=scrollView.contentOffset;

NSLog(@"%f",(float)point1.x);

[pagec setCurrentPage:point1.x/183];

}

//每次pagecontrol变动后scrollview都跟着变化

-(void)pageControlSelector:(UIPageControl *)sender{

UIScrollView *getscroll=(UIScrollView   *)[self.view viewWithTag:121];//拿到scrollview;知道滚动对象

CGSize size=getscroll.frame.size;

CGRect reck1=CGRectMake((sender.currentPage *size.width), 0, size.width, size.height);

[getscroll scrollRectToVisible:reck1 animated:YES];

}

//按钮的方法

-(void)doRemoveScrollView:(id)sender{

UIView *removeView=[self.view viewWithTag:121];

[removeView removeFromSuperview ];

}

- (void)didReceiveMemoryWarning {

[super didReceiveMemoryWarning];

}

@end

UIScrollView,UIPageControl的更多相关文章

  1. UIScrollView,UIPageControl,UIImageView 实现图片轮播的效果

    上一篇博客介绍了如何将XCode创立的项目提交到Git版本控制,这次就直接做一个图片轮播的展示demo,刚好可以把UIScrollView.UIPageControl.UIImageView这三个控件 ...

  2. 启动图实现:UIScrollView+UIPageControl简单实现

    #import "MJViewController.h"#import "RootViewController.h" @interface MJViewCont ...

  3. iOS纯代码制作欢迎界面——UIScrollView, UIPageControl, UIImageView,UIButton, NSTimer

    欢迎界面,还是比较简单的,一个UIScrollView控件,一个UIPageControl,几个UIImageView即可摆平.在这里光玩这些,就显得诚意不足了.特意拓展一下,再加几个UIButton ...

  4. IOS初级:UIScrollView & UIPageControl

    UIScrollView其实构建的就像一列很长的火车,每滑动一个屏幕,展示一节车厢. //主屏幕高度 #define kScreenHeight [UIScreen mainScreen].bound ...

  5. swift开发之 -- 自动轮播图(UIScrollView+UIPageControl+Timer)

    比较简单,原理就不说了,这里只做记录: 代码如下: 1,准备 var pageControl:UIPageControl? var myscrollView:UIScrollView? var myT ...

  6. 第二、UIScrollView的使用大全

    UIScrollView UIPageControl 的使用 2011-11-19 16:48 4690人阅读 评论(0) 收藏 举报 imagescrollspringiphone // //    ...

  7. FlipView For Xamarin.Form 之 IOS

    之前写过两篇博文 是关于 Android 和 Windows Phone 下的 FlipView 的实现. 上上周,有个印度佬通过 GitHub 找到我, 问我有没有打算个 ios 端的,还说比较了相 ...

  8. iOS:核心动画的详解介绍:CAAnimation(抽象类)及其子类

    核心动画的详解介绍:CAAnimation(抽象类)   1.核心动画基本概念 Core Animation是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果,而且往往是事半功倍! 使用它 ...

  9. iOS回顾笔记(05) -- 手把手教你封装一个广告轮播图框架

    html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,bi ...

随机推荐

  1. MySQL执行SHOW STATUS查询服务器状态状态之Handler_read_* 详解

    在MySQL里,我们一般使用SHOW STATUS查询服务器状态,语法一般来说如下: SHOW [GLOBAL | SESSION] STATUS [LIKE ‘pattern’ | WHERE ex ...

  2. 何查看Tomcat版本信息

    转自:http://dengjianqiang200.blog.163.com/blog/static/65811920094644354148/ 一般来说,在tomcat启动时就会有版本信息,如: ...

  3. fir.im Weekly - 2016 移动开发技术大回顾

    2016 年是移动技术发展迅速的一年,认认真真回顾这一年必不可少.@移动开发前线 的 这篇 2016移动开发技术巡礼 ,精心盘点了 2016 年 移动开发技术大事件,分为 iOS/Android平台篇 ...

  4. 随机 I/O & 顺序 I/O

    在谈这俩概念前.先来说说 大I/O vs. 小I/O     通常.我们把 <=16KB 的I/O认为是小I/O.而 >=32KB 的I/O认为是大I/O     了解I/O的大小.影响到 ...

  5. Deepin Linux 安装JDK

    最近在自己的笔记本上安装了Deepin Linux,虽然使用过程中发现一些bugs,但是总体感觉还不错,准备把她作为开发系统使用.系统自带的JDK是Open JDK,但是在做JAVA开发的时候通常需要 ...

  6. 关于删除7z历史解压路径

    目前7zip尚无此功能,只能从注册表入手了,7zip历史记录保存在注册表 HKEY_CURRENT_USER\Software\7-Zip\FM 下的CopyHistory和FolderHistory ...

  7. Photoshop笔记一

    Photoshop界面认识 Photoshop界面认识 区域划分 工作 (快捷键) 功能键 常用键: 新建图层 剪切并原位粘贴 建立图层组合 合并图层 课程练习讲解 区域划分

  8. 【阿里云产品评测】小站长眼中的巅峰云PK

    [阿里云产品评测]小站长眼中的巅峰云PK 阿里云论坛用户:昵称-a5lianmeng 笔者是一名小站长,因狂热互联网,而在毕业后由宅男逐渐进入站长队伍,在毕业后的几年间,经营6个流量类网站,身为站长, ...

  9. TFS 2010 使用手册(二)项目集合与项目

    1.项目集合 1.1 项目集合创建 打开TFS管理控制台,点击“团队项目集合”. 图1点击“团队项目集合” 图2 点击“创建集合” 然后按照向导一步步完成项目集合的创建. 1.2 项目集合的删除 选中 ...

  10. django 用imagefiled访问图片

    使用FileField和ImageField时,我们有几个步骤: 在settings.py中设置MEDIA_ROOT和MEDIA_URL MEDIA_ROOT:一个绝对路径,Django根据它知道文件 ...