目标:实现通过手势进行图片的切换   通过左扫右扫 来实现(纯代码)

添加三个属性 1uiImageView 用来显示图片的view

      2 index 用来表示图片的索引

      3 ISLeft 判断是不是向左滑

下边是详细的代码:

- (void)viewDidLoad {
[super viewDidLoad];
self.index = 0;
self.ISLeft = YES;
_imageView = [[UIImageView alloc]initWithFrame:self.view.frame];
// _imageView.backgroundColor = [UIColor redColor];
_imageView.contentMode = UIViewContentModeScaleAspectFit;//合适的大小 self.imageView.image = [UIImage imageNamed:[NSString stringWithFormat:@"%ld.png",_index]]; [self.view addSubview:_imageView]; //用户交互设置
self.imageView.userInteractionEnabled = YES; //添加扫动得手势
UISwipeGestureRecognizer *swipL = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(swip:)];
swipL.direction = UISwipeGestureRecognizerDirectionLeft;
[self.imageView addGestureRecognizer:swipL]; UISwipeGestureRecognizer *swipR = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(swip:)];
swipR.direction = UISwipeGestureRecognizerDirectionRight;
[self.imageView addGestureRecognizer:swipR]; }

设置转场动画 :在手势里边进行实现

手势的实现以及转场动画:

-(void)swip:(UISwipeGestureRecognizer *)sender

{

    if(sender.direction == UISwipeGestureRecognizerDirectionLeft)

    {

        if(self.index>=0)

        {

            if(self.index>0)

            {

                self.index--;

            }

            else

            {

                self.index =3;

            }

            self.ISLeft = YES;

        }

    }

    else

    {

        self.ISLeft = NO;

        if(self.index<3)

        {

            self.index++;

            if(self.index ==3)

            {

                self.index =0;

            }

        }

    }

    //转场动画

    CATransition *trans = [[CATransition alloc]init];
//转场动画的类型
trans.type =@"push";
//判断是不是向左滑
if(self.ISLeft) { trans.subtype = kCATransitionFromTop; } else { trans.subtype = kCATransitionFromBottom; } trans.duration = 0.5f; [self.imageView.layer addAnimation:trans forKey:@"trans"]; //切换图画 self.imageView.image = [UIImage imageNamed:[NSString stringWithFormat:@"%ld",_index]]; }

ios手势复习值之换图片-转场动画(纯代码)的更多相关文章

  1. iOS:UIView的block函数实现转场动画---单视图

    使用UIView动画函数实现转场动画——单视图 + (void)transitionWithView:(UIView *)view duration:(NSTimeInterval)duration ...

  2. iOS:UIView的block函数实现转场动画---双视图

    使用UIView动画函数实现转场动画——双视图 + (void)transitionFromView:(UIView *)fromView toView:(UIView *)toView durati ...

  3. UIView封装动画--iOS利用系统提供方法来做转场动画

    UIView封装动画--iOS利用系统提供方法来做转场动画 UIViewAnimationOptions option; if (isNext) { option=UIViewAnimationOpt ...

  4. iOS:核心动画之转场动画CATransition

    转场动画——CATransition CATransition是CAAnimation的子类,用于做转场动画,能够为层提供移出屏幕和移入屏幕的动画效果.iOS比Mac OS X的转场动画效果少一点 U ...

  5. iOS 自定义转场动画浅谈

    代码地址如下:http://www.demodashi.com/demo/11612.html 路漫漫其修远兮,吾将上下而求索 前记 想研究自定义转场动画很久了,时间就像海绵,挤一挤还是有的,花了差不 ...

  6. 一行代码实现自定义转场动画--iOS自定义转场动画集

    WXSTransition 这款非常不错,力推 这是作者源码简书地址: http://www.jianshu.com/p/fd3154946919 这是作者源码github地址 https://git ...

  7. iOS开发系列--无限循环的图片浏览器

    --UIKit之UIScrollView 概述 UIKit框架中有大量的控件供开发者使用,在iOS开发中不仅可以直接使用这些控件还可以在这些控件的基础上进行扩展打造自己的控件.在这个系列中如果每个控件 ...

  8. ios手势

    iOS 手势操作:拖动.捏合.旋转.点按.长按.轻扫.自定义 大 中 小   1.UIGestureRecognizer 介绍 手势识别在 iOS 中非常重要,他极大地提高了移动设备的使用便捷性. i ...

  9. iOS 手势操作:拖动、捏合、旋转、点按、长按、轻扫、自定义

    1.UIGestureRecognizer 介绍 手势识别在 iOS 中非常重要,他极大地提高了移动设备的使用便捷性. iOS 系统在 3.2 以后,他提供了一些常用的手势(UIGestureReco ...

随机推荐

  1. lambda -- Java 8 find first element by predicate

        Java 8 find first element by predicate up vote6down votefavorite I've just started playing with ...

  2. (转载)MySQL关键字ORDER BY的使用

    例子: mysql), d_id ), name ), age ), sex ), homeaddr )); // 可以看到首先按照d_id进行升序排列,排列好了之后, // 若d_id字段中有相同的 ...

  3. page-object使用(2)---elements

    elements就是html元素下所有的标签.用page-object你可以找到并定位html页面下绝大多数的元素,这个文章列出了可定位的这些元素,生成的方法,和依据什么关键字来找到这些元素. BUT ...

  4. HDU 4716 A Computer Graphics Problem 2013年四川省赛题

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4716 题目大意不用解释了吧,看案例就能明白 #include<cstdio> #inclu ...

  5. hdoj 2044一只小蜜蜂...【斐波那契变形】

    一只小蜜蜂... Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  6. 【转】服务器证书安装配置指南(Weblogic)

    服务器证书安装配置指南(Weblogic) 详情请点击: http://verisign.itrus.com.cn/html/fuwuyuzhichi/fuwuqizhengshuanzhuangpe ...

  7. Python - 元组(tuple) 详解 及 代码

    元组(tuple) 详解 及 代码 本文地址: http://blog.csdn.net/caroline_wendy/article/details/17290967 元组是存放任意元素集合,不能修 ...

  8. Linux命令 — 设置或查看网络配置命令ifconfig

    ifconfig命令用于设置或查看网络配置,包括IP地址.网络掩码.广播地址等.它是linux系统中,使用频率最高的关于网络方面的命令. 1. 命令介绍 命令格式: ifconfig [interfa ...

  9. linux 内存管理大图

  10. I/O体系结构和设备驱动程序

    http://blog.csdn.net/kafeiflynn/article/category/789844