zoukankan      html  css  js  c++  java
  • UIView动画与拉伸图片

    1.block式动画

    横向或纵向移动XY

     [UIView animateWithDuration:0.5 animations:^{

            self.aView.frame = CGRectMake(_aView.frame.origin.x, _aView.frame.origin.y + 50, _aView.frame.size.width, _aView.frame.size.height);

        }];

    或者

      [UIView animateWithDuration:0.5 animations:^{

            //_aView.transform = CGAffineTransformMakeTranslation(0, 20);

            _aView.transform = CGAffineTransformTranslate(_aView.transform, 10, 10);

        }];

    渐变效果

     [UIView animateWithDuration:0.5 animations:^{

            _aView.alpha = !_aView.alpha;

        }];

    2.头尾式动画  ---翻页效果

    [UIView beginAnimations:nil context:nil]  1, 开始配置动画

    [UIView setAnimationDuration:0.5];设置动画时间

    //========2,要执行的动画代码==========================================

    [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];

    [UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:_aview cache:NO];

    //=======要执行的动画代码============================================

    [UIView commitAnimations]  3,提交动画

    旋转效果

    旋转一次

    [UIView animateWithDuration:0.5 animations:^{

            _aView.transform = CGAffineTransformMakeRotation(M_PI);

        }];

     旋转多次

        [UIView animateWithDuration:0.5 animations:^{

            _aView.transform = CGAffineTransformRotate(_aView.transform, M_PI_4);

        }];

      放大效果

     [UIView animateWithDuration:0.2 animations:^{

     //_aView.transform = CGAffineTransformMakeScale(2, 2);

     _aView.transform = CGAffineTransformScale(_aView.transform, 1.1, 1.1);

    }];

    缩小  

        [UIView animateWithDuration:0.5 animations:^{

            _aView.transform = CGAffineTransformMakeScale(0.5, 0.5);

        }];

    还原

       _PinkView.transform = CGAffineTransformIdentity;

    二。局部拉伸图片

    一张图片本来是25*60,而button是150*150的,需求:将图片设置为button背景,图片不模糊‘

    UIButton *btn = [UIButton alloc ]initwithframe:CGRectMake(100,100,150,150)];

    UIImage *img = [UIImage imagenamed:pic];

    CGFloat top = 25;//上端盖

    CGFloat buttom = 25;

    CGFloat left= 10;

    CGFloat right= 10;

    UIEdgeInset inset = UIEdgeInsetMake(top,buttom,left,right);

    image = [image resizableimagewithCapInset:inset resizingMode:(UIImageResizingMode)resizingMode];

    [btn setBackgroundImage:image forStatus:UIControlStatusNormals];

    [self.view addSubview:btn

    iOS中有个叫端盖(end cap)的概念,用来指定图片中的哪一部分不用拉伸。比如下图中,黑色代表需要被拉伸的矩形区域,上下左右不需要被拉伸的边缘就称为端盖。

  • 相关阅读:
    关于java异常处理的自我学习
    html学习
    java第七周动手动脑
    作业
    动手动脑
    我要建立自己的java代码仓库
    第三周作业
    day0319 模块
    day0318装饰器和内置函数
    day0315 迭代器
  • 原文地址:https://www.cnblogs.com/yangqinglong/p/5158495.html
Copyright © 2011-2022 走看看