商品加入购物车的动画

额,做一个类似饿了吗加入购物车的动画

先说一下思路,再上代码吧

1.这里主要的难题就是坐标的计算,因为一个是tableView.supperView的坐标(购物车图标),还有一个就是cell中的起始图标,

思路:我的思路就是在

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 

此方法中向cell传入购物车的view,这样就能在cell中计算坐标了,具体的计算

- (void)starAnimation {
    //获取cell的tableview
    UITableView *tableView = (UITableView *)self.superview.superview;
    CGRect addFrame = self.addImage.frame;
    CGPoint layerPoint = CGPointMake(self.frame.origin.x+addFrame.origin.x, self.frame.origin.y-tableView.contentOffset.y+addFrame.origin.y+20);
    //获取需要创建的layer的frame
    CGRect layerFrame = CGRectMake(layerPoint.x, layerPoint.y, addFrame.size.width, addFrame.size.height);
    LIUCircleLayer *layer = [LIUCircleLayer layoutWithFrame:layerFrame];
    [self.willGoView.superview.layer insertSublayer:layer above:tableView.layer];
   
    //创建一个队列结构来存储创建的layer,以便结束之后移除
    [self.queue addValue:layer];
    
    [layer addAnimation:[self getAnimationWithStartPoint:CGPointMake(CGRectGetMidX(layerFrame), CGRectGetMidY(layer.frame))] forKey:nil];
}

//我觉得这个就是本次中的难点了

好了 具体完整的代码见github

posted on 2015-11-10 16:42  飞羽的幸福  阅读(134)  评论(0编辑  收藏  举报

导航