UIScrollView和UIPageControl

UIScrollView和UIPageControl 一般配合使用

//创建一个滑动/滚动的视图,大小和当前视图大小一样(可以自定义大小)
    UIScrollView *scrollView=[[UIScrollView alloc] initWithFrame:self.view.bounds];
    //设置显示内容区域的大小,宽度是当前视图的6倍(可以自定义大小),
    scrollView.contentSize=CGSizeMake(self.view.frame.size.width*6, self.view.frame.size.height);
    //设置视图左上角距离坐标原点的偏移量,
    scrollView.contentOffset=CGPointMake(10, 10);
    //是否整屏翻动 大于1/2就翻动,否则不反动
    scrollView.pagingEnabled=YES;
    //设置边界是否回弹
    scrollView.bounces=NO;
    //设置是否能够滚动
    scrollView.scrollEnabled=YES;
    //设置缩小的最小比例,本例设置成0.8
    scrollView.minimumZoomScale=0.8;
    //设置放大的最大比例,本例最大设置成2.0
    scrollView.maximumZoomScale=2.0;

//设置代理
    scrollView.delegate=self;
    scrollView.tag=1001;

//UIScrollView 的代理delegate,指定缩放的视图是谁
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{
    UIImageView *imageView=(UIImageView *)[scrollView viewWithTag:1001];
    return imageView;
}

- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{
    NSLog(@"动画");
}

//开始减速时触发
- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView{
    NSLog(@"开始减速");
}

//结束减速时触发
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
    NSLog(@"结束减速");
}

//将要被拖拽时触发
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{
    NSLog(@"将要被拖拽");
}
//将要结束拖拽时触发
- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset NS_AVAILABLE_IOS(5_0){
    NSLog(@"将要结束拖拽");
}
//已经结束拖拽时触发
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{
    NSLog(@"已经结束拖拽");
}

//scrollView正在滚动的时候会触发该方法
//- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
//    NSLog(@"正在滚动");
//}

//结束缩放, 实现缩放完成之后的协议方法
-(void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(CGFloat)scale{
    view.center=self.view.center;
    
}

//创建一个页面管理器

UIPageControl *pageControl=[[UIPageControl alloc] initWithFrame:CGRectMake(60, 600, 200, 50)];
    //pageControl.backgroundColor=[UIColor grayColor];
    //设置页面个数
    pageControl.numberOfPages=6;
    //设置当前页的位置
    pageControl.currentPage=1;
    //设置当前页 指示器的颜色,设置选中的圆点的颜色
    pageControl.currentPageIndicatorTintColor=[UIColor blueColor];
    //设置未选中圆点的颜色
    pageControl.pageIndicatorTintColor=[UIColor redColor];
    
    
    //继承control可以调用他的add添加方法
    [pageControl addTarget:self action:@selector(changeValue:) forControlEvents:UIControlEventValueChanged];

//通过pageControl里面的页面控制scrollview中的内容显示

//在pagecrotoll中添加方法 pageControl是创建的对象,

[pageControl addTarget:self action:@selector(changePageNum:) forControlEvents:UIControlEventValueChanged];

//方法的实现 sceollView是 滚动视图的对象

-(void)changePageNum:(UIPageControl *)page{
    scrollView.contentOffset=CGPointMake(pageControl.currentPage*(self.view.frame.size.width), 0);
}
//通过scrollView控制pageControl的当前currentpage

//添加代理

scrollView.delegate=self;

-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollViews{
    int num=(int)(scrollViews.contentOffset.x/self.view.frame.size.width);
    pageControl.currentPage=num;
}

时间: 2024-09-30 06:57:11

UIScrollView和UIPageControl的相关文章

iOS基础——通过案例学知识之LaunchScreen、APPIcon、StatusBar、UIScrollView、UIPageControl

iOS基础--通过案例学知识之LaunchScreen.APPIcon.StatusBar.UIScrollView.UIPageControl 今天要实现的案例效果图 一.LaunchScreen 1.设置程序的LaunchScreen 在项目配置文件中配置启动页,并且在LaunchScreen.storyboard中进行布局 2.设置LaunchScreen时间 //单位:秒 [NSThread sleepForTimeInterval:1.5f]; 二.APPIcon 1.命名规则:iOS

使用UIScrollView和UIPageControl做一个能够用手势来切换图片的效果

利用UIScrollView的滚动效果来实现,先上图: 实现过程是:在viewController里先增加UIScrollView和UIPageControl: -(void) loadView { [super loadView]; UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320,480)]; UIPageControl* pageControl = [[UIPageCont

IOS 之 UIScrollView,UIPageControl

UIScrollView 可以用于显示多于一个屏幕的内容,超出屏幕范围的内容可以通过滑动进行查看,UIPageControl 类提供一行点来指示当前显示的是多页面视图的哪一页. 下面实现一个简单的图片自动播放器为例说说 UIScrollView 与 UIPageControl类中的一些方法. 注意:下述代码中的 scrollY,kScreenWidth,kScreenHeight,kImgCount 等都是定义好的常量 #define kScreenHeight [UIScreen mainSc

UIScrollView 和UIPageControl 实现app启动滑动图

一.使用NSUserDefaults 判断滑动图有没有出现过,加载滑动图 NSUserDefaults 简介: NSUserDefaults可以将数据永久的保存在手机中,他是一个单例,用起来很方便,所以很适合用于保存简单的数据和为数据做标记 你可以选择在AppDelegate.m中的didFinishLaunchingWithOptions 方法或者"初始界面"(加载的第一个viewController)的 viewDidLoad 方法中进行判断滑动图是否出现过,写上代码: NSUse

使用UIScrollView和UIPageControl做一个可以用手势来切换图片的效果

利用UIScrollView的滚动效果来实现,先上图: 实现过程是:在viewController里先加入UIScrollView和UIPageControl: -(void) loadView { [super loadView]; UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320,480)]; UIPageControl* pageControl = [[UIPageCont

UIScrollVIew和UIPageControl学习使用

概要 对于同一个页面需要展示很多图片信息.子视图等的这样的需求,我们可以采用控件UIScrollVIew,与之常常一起使用的控件是UIPageControl,UIScrollVIew里面可以存放多个子视图,通过设置页模式,以及子页面在UIScrollVIew的content位置,可以在滑动控件UIScrollVIew的时候切换子视图.为了交互友好,常常和控件UIPageControl一起使用,该控件是一组指示器,一般指示器个数对应于上述的子页面个数,通过改组指示器可以看到当前子页面的位置以及整个

[iOS]通过UIScrollView和UIPageControl实现滑动切换的效果

UIPageControl是自带的控件,可以查看官方文档,下载官方示例学习. 如果对Xcode自带的文档不熟悉可以参见:苹果Xcode帮助文档阅读指南 接下来是我学习笔记,使用Storyboard实现滑动切换的效果. ----------------------------------------------------------------------------- 新建一个项目,拖上一个UIScrollView和UIPageControl,并且建立关联: 新建一个ContentViewCo

iOS开发 首次启动显示用户引导,第二次启动直接进入App,UIScrollView,UIPageControl,NSUserDefaults

首先创建一个引导图的控制器类 UserGuideViewController.h和UserGuideViewController.m #import <UIKit/UIKit.h> #import "firstViewController.h" #define WIDTH self.view.frame.size.width #define HEIGHT self.view.frame.size.height @interface UserGuideViewControll

通过UIScrollView和UIPageControl结合制作相册

1.创建UIScrollView视图: UIScrollView *aScrollView = [[[UIScrollView alloc] initWithFrame:self.view.bounds] autorelease]; aScrollView.backgroundColor = [UIColor redColor]; [self.view addSubview:aScrollView]; aScrollView.contentSize = CGSizeMake(CGRectGetW