苹果开发之iOS加入购物车动画效果

 代码如下 复制代码
#pragma mark -购物篮按钮点击事件
-(void)shoppingCartButtonAction:(UIButton*)sender
{
    if ([[userDef objectForKey:@"id"]isEqualToString:@"0"]) {
        [self showHUDTextOnly:@"请登录后,再进行操作" ];
        return;
    }
    NSDictionary *parameters = @{
                                 @"user_id":[userDef objectForKey:@"id"],
                                 @"gp_id":[NSString stringWithFormat:@"%@",[cell2Array[sender.tag - 101] objectForKey:@"gp_id"]],
                                 @"number" :@1
                                 };
    [self defaultRequestwithURL:KAddToCartURL withParameters:parameters withMethod:@"POST" withBlock:^(NSDictionary *dict, NSError *error){
         if ([[dict objectForKey:kCode] integerValue]==1) {
             //该部分动画 以self.view为参考系进行
             UIImageView *imageView=[[UIImageView alloc]initWithImage:[UIImage imageNamed:@"button_hot_shopping-cart_red-1"]];
             imageView.contentMode=UIViewContentModeCenter;
             imageView.frame = sender.bounds;
             imageView.hidden=YES;
             CGPoint point= sender.frame.origin;
             imageView.center=point;
             CALayer *layer=[[CALayer alloc]init];
             layer.contents=imageView.layer.contents;
             layer.frame=imageView.frame;
             layer.opacity=1;
             [self.view.layer addSublayer:layer];
             //动画 终点 都以sel.view为参考系
             CGPoint endpoint= CGPointMake(SCREEN_WIDTH*7/10.0, SCREEN_HEIGHT - 22);
             UIBezierPath *path=[UIBezierPath bezierPath];
             //动画起点
             CGRect rect=[sender convertRect: sender.bounds toView:self.view];
             CGPoint startPoint=CGPointMake(rect.origin.x +rect.size.width/2, rect.origin.y +rect.size.height/2);
             [path moveToPoint:startPoint];
             //贝塞尔曲线中间点
             float sx=startPoint.x;
             float sy=startPoint.y;
             float ex=endpoint.x;
             float ey=endpoint.y;
             float x=sx+(ex-sx)/3;
             float y=sy+(ey-sy)*0.5-400;
             CGPoint centerPoint=CGPointMake(x,y);
             [path addQuadCurveToPoint:endpoint controlPoint:centerPoint];
             
             CAKeyframeAnimation *animation=[CAKeyframeAnimation animationWithKeyPath:@"position"];
             animation.path = path.CGPath;
             animation.removedOnCompletion = NO;
             animation.fillMode = kCAFillModeForwards;
             animation.duration=0.8;
             animation.delegate=self;
             animation.autoreverses= NO;
             animation.timingFunction=[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn];
             [layer addAnimation:animation forKey:@"buy"];
             //更新角标
             [self cornerNumber];
         }else {
             [self showHUDTextOnly:[dict objectForKey:kMessage]];
        }
     }];
}
时间: 2024-11-30 00:10:30

苹果开发之iOS加入购物车动画效果的相关文章

苹果开发之ios 验证码倒计时

第一步,拖两个空间textfiled和button到storyboard上的viewcontroller上. 开发之ios 验证码倒计时-ios开发验证码倒计时"> 第二步,拖线,链接到.h文件中代码如下: @property (weak, nonatomic) IBOutlet UIButton *l_timeButton; 第三步,在,m文件中为l_timeButton设置监听器,监听点击事件. - (void)viewDidLoad {     [super viewDidLoad]

苹果开发之iOS 摇一摇动画

微信的摇一摇动画效果看起来很棒,这里是类似的摇一摇动画效果,代码示例:  代码如下 复制代码 #pragma mark - 摇一摇 - (void)motionBegan:(UIEventSubtype)motion withEvent:(UIEvent *)event {     if (motion == UIEventSubtypeMotionShake) {         AudioServicesPlaySystemSound(kSystemSoundID_Vibrate); //震

苹果开发之ios图片上传方法

方法1 在项目中我们经常会遇到需要上传图片的地方,比如更换头像,上传证件照片等.下面介绍一种上传图片的方法. 首先我们需要在项目里打开手机的相册或者相机,然后在下面这个代理方法里进行图片的上传操作. 需要遵循 <UIImagePickerControllerDelegate,UINavigationControllerDelegate>代理. -(void)imagePickerController:(UIImagePickerController *)picker didFinishPick

Android 实现蘑菇街购物车动画效果

转自:http://blog.csdn.net/wangjinyu501/article/details/38400479   使用过蘑菇街的用户基本上都知道有一个加入购物车的动画效果,此处不具体描述想知道的可以去下载体验一下. 1.思路   目前想到两种方式实现这种效果,一是使用Tween动画,直截了当的进行一个移动,蘑菇街就是使用这样的方法.二是使用WindowManager创建一个View,然后对这个View进行移动. 2.实现   本文先用方式一方法实现,之后会用方式二方法实现.   方

IOS等待时动画效果的实现_IOS

查询时间或长或短,为了提升用户体验,目前用的比较多的手段之一就是查询等待时添加一个动态等待效果.当我们在请求网络时加载页面时有个动作效果,效果图如下: 源代码可以网上找开源项目Coding.net,上面的效果原理为两张图片组合,外面那个则为动画转动,里面的图标则是透明度的变化:主要代码如下: 1:把它封装在EaseLoadingView里面 @interface EaseLoadingView : UIView @property (strong, nonatomic) UIImageView

IOS实现视频动画效果的启动图_IOS

先上效果图 实现思路 主要思路就是用一个控制器来作为播放视频的载体,然后在让这个控制器作为根视图,视频播放完成之后那就该干嘛干嘛了. 话不多说了,下面就放代码好了 先新建一个控制器AnimationViewController在控制器中新建一个属性moviePlayer,记得要先引入系统库<MediaPlayer/MediaPlayer.h> @property (nonatomic, strong) MPMoviePlayerController *moviePlayer; 设置movieP

基于JS实现Android,iOS一个手势动画效果_javascript技巧

废话不多说了,先给大家展示下效果图: 这是iOS下的效果,android下完全一致.通过do_GestureView组件和do_Animation组件,deviceone能很容易实现复杂的跨平台纯原生动画效果,这个示例就是通过手势控制图片上下动画滑动实现开合效果,还支持声音效果. 下面是主要的代码 //index.ui.js var do_Animator1 = mm("do_Animator"); do_Animator1.append(500, { y: -1334, curve:

iOS的GIF动画效果实现

GIF在iOS中的使用场景 GIF在iOS中的使用场景有以下三个方面. (1)GIF图片分解为单帧图片. (2)一系列单帧图片合成GIF图片. (3)iOS系统上展示GIF动画效果. 在GIF的合成和分解方面将会接触到iOS图像处理核心框架ImageIO,作为iOS系统中图像处理的核心框架,它为我们提供了各种丰富的API,本文将要实现的GIF分解与合成功能,通过ImageIO就可以很方便地实现.GIF动画展示效果将结合UIImageView和定时器,利用逐帧展示的方式为大家呈现GIF动画效果.

iOS easing tween 动画效果

在iOS 开发中,要做一个动画效果,我们会用到CAKeyframeAnimation. 这个库提供了一些对frame 动画的控制,什麽是frame 动画? frame 动画就好比电视动画那样,由一格一格的图画(也可以想像成frame)构成, 快速播放图画便成了动画. 在CAKeyframeAnimation 的概念是一样, 你只需要提供keyframe 的信息, 程序会自动完成keyframe之间的"图画". 如果大家有用过adobe flash 这工具, 其实是等同motion/sh