iOS添加到购物车的简单动画效果


#pragma mark - 添加到购物车的动画效果
// huangyibiao
- (void)addAnimatedWithFrame:(CGRect)frame {
  // 该部分动画 以self.view为参考系进行
  frame = [[UIApplication sharedApplication].keyWindow  convertRect:frame fromView:self.RFcell.headBtn];
  UIButton *move = [[UIButton alloc] initWithFrame:frame];
  [move setBackgroundColor:UIColorFromRGB(0xFFA215)];
  [move setTitle:self.RFcell.headBtn.currentTitle forState:UIControlStateNormal];
  [move setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
  move.contentMode = UIViewContentModeScaleToFill;
  [[UIApplication sharedApplication].keyWindow addSubview:move];
  // 加入购物车动画效果
  [UIView animateWithDuration:1.2 animations:^{
    move.frame = CGRectMake(320 - frame.size.width  - 20, 24,
                            frame.size.width, frame.size.height);
  } completion:^(BOOL finished) {
    [move removeFromSuperview];
    if (self.cartCategoriesLabel == nil) {
      self.cartCategoriesLabel = [[UILabel alloc] initWithFrame:CGRectMake((16 - 8) / 2, (16 - 8) / 2, 8, 8)];
      self.cartCategoriesLabel .textColor = [UIColor whiteColor];
      self.cartCategoriesLabel .backgroundColor = [UIColor clearColor];
      self.cartCategoriesLabel .textAlignment = NSTextAlignmentCenter;
      self.cartCategoriesLabel .font = [UIFont systemFontOfSize:9];
      UIImageView *imgView = [[UIImageView alloc] initWithFrame:CGRectMake(15, 8, 16, 16)];
      imgView.image = [UIImage imageNamed:@"news"];
      [imgView addSubview:self.cartCategoriesLabel];
      [self.cartButton addSubview:imgView];
    }
    self.cartCategoriesLabel .text = [NSString stringWithFormat:@"%d", _cartCategories.count];
  }];

  return;
}

frame参数是按钮的frame,也就是原来所在父视图上的Frame

这里会将原来的frame转换成window上的frame

在动画完成后,更新显示购物车中的商品种类数

时间: 2024-10-01 11:50:56

iOS添加到购物车的简单动画效果的相关文章

原生javascript实现的一个简单动画效果_javascript技巧

本文章向大家介绍一个javascript实现的动画.点击开始按钮div会往右移动,点击停止后,div停止移动,再点击则继续移动.请看下面代码. <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <head> <title>javascript实现的简单动画</title> <style type="text/css"&g

利用Visual C# 2005制作简单动画效果

一般的 Windows Form 通常是运用各种控件来显示数据,然而如果您希望在窗体中加入特殊效果来凸显数据内容,那么图形与动画将是非常不错的选择. 一般来说,我们会使用 .Net Framework中 的 GDI+ 函式库来制作图形与动画效果.在 GDI+ 还没有推出之前,如果要产生二维的 向量图形.影像.以及印刷样式,必须使用旧版操作系统中的GDI.新的 GDI+ 是 Windows XP 的一部份,除了加入新功能之外,还最佳化现有功能以便具体改进 GDI(也就是旧版 Windows 包含的

JS实现回到页面顶部动画效果的简单实例_javascript技巧

最近在模仿各大网站写页面样式和交互,发现好多都有回到顶部的需要,所以写了一下js,记录下来. 发现还可以添加从快到慢的动画效果和随时下拉滚动条停止滚动的功能, 参考了imooc上相关课程,最终实现JS代码如下: //页面加载后触发 window.onload = function(){ var btn = document.getElementById('btn'); var timer = null; var isTop = true; //获取页面可视区高度 var clientHeight

Javascript动画效果(3)_javascript技巧

前面我们已经介绍了速度动画.透明度动画.多物体运动和任意值变化,并且我们在Javascript动画效果(二)中介绍到我们封装了一个简单的插件雏形,接下来我们对前面的动画效果进行进一步扩充,尽量将我们的框架做到更实用.在这里我们还需要了解两个运动,一个是链式运动,一个是同时运动.它们间的区别分别是:链式运动是指运动一个接着一个(一个运动完成马上进行下一个运动):而同时运动是指所有的运动同时进行.在这里,我们该如何实现呢? 1.链式运动 前面的效果中,我们已经能对任意值进行相应的变化,我们该如何在一

FLASH中实现眨眼睛的动画效果

许多FLASH动画短片和MV中经常有精美生动的动画人物出现,配合眨眼动作.口形变化以及头发的飘动,再加上人物的配音,一个活脱脱的动画人物形象就出现在FLASH动画中了.很多人都想知道这样的人物是如何做得栩栩如生的,尤其是其中的简单动画效果,如眨眼的动作,如何制作人物的眨眼动画呢?其实技巧很简单,甚至都不需要专门教程来指导,但是对于初学者,笔者认为却是应该用一个实例教程来给予指导的.最近发现帝国的在线教程中也有很多这样的提问--"在FLASH中如何制作效果逼真的人物眨眼效果?",其他的F

幻灯片怎么设置多个动画效果

在每张幻灯片中的各个对象都可以设置不同的动画效果,对同一个对象也可以添加两种不同的动画效果. 步骤1:按[Ctrl+0]组合键,打开一个演示文稿,如下图所示. 步骤2:在幻灯片中,选择需要添加动画效果的对象,如下图所示. (该内存不能为read的解决办法:内存不能为read修复工具http://www.woaidiannao.com/html/syjq/6543.html) 步骤3:切换至"动画"面板,在"动画"选项板中单击"其他"按钮,在弹出的

Android布局变化时动画效果的现实(一)

MainActivity如下: package cc.test; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.LinearLayo

Android把商品添加到购物车的动画效果(贝塞尔曲线)_Android

当我们写商城类的项目的时候,一般都会有加入购物车的功能,加入购物车的时候会有一些抛物线动画,具体代码如下: 实现效果如图: 思路: 确定动画的起终点 在起终点之间使用二次贝塞尔曲线填充起终点之间的点的轨迹 设置属性动画,ValueAnimator插值器,获取中间点的坐标 将执行动画的控件的x.y坐标设为上面得到的中间点坐标 开启属性动画 当动画结束时的操作 难点: PathMeasure的使用 - getLength() - boolean getPosTan(float distance, f

iOS中给自定义tabBar的按钮添加点击放大缩小的动画效果_IOS

之前想过一些通过第三方的方式实现动画,感觉有点麻烦,就自己写了一个 不足之处还望大家多多指出 // 一句话,写在UITabBarController.m脚本中,tabBar是自动执行的方法 // 点击tabbarItem自动调用 -(void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item { NSInteger index = [self.tabBar.items indexOfObject:item]; [self a