拖动和交换两个UIScrollViews(悬停和交换效果)

时间:2014-09-29 13:40:20

标签: objective-c xcode uiscrollview drag-and-drop dropshadow

我正在我的应用中创建照片编辑器并处理多图片布局选项。

目前,当用户拍照时,我在嵌入UIScrollView的UIImageView中显示他们的图像。我将它嵌套在UIScrollView中的原因是我可以平移和缩放。

在用户选择二重奏布局模式的情况下,应用程序并排放置2个图像(因此2个UIScrollViews)。

如果他们手指放在一个UIScrollView上,我想把UIScrollView提升一点并给它一个阴影。

我还有很长的路要走,但我很好奇本机库中是否有任何东西可以让我自动创建这种悬停效果来拖动视图类。

由于

enter image description here

1 个答案:

答案 0 :(得分:1)

不,没有任何预先存在的功能。您可以使用以下内容添加阴影并为自己制作“升力”动画:

// define dragged somewhere as the UIView subclass of your choosing
dragged.layer.shadowColor = [UIColor blackColor].CGColor;
dragged.layer.shadowOffset = CGSizeMake(-2, 2);
dragged.layer.masksToBounds = NO;
dragged.layer.shadowRadius = 4;
dragged.layer.shadowOpacity = .7;
[UIView animateWithDuration:.2 delay:0
                    options:UIViewAnimationOptionCurveEaseInOut
                 animations:^{self.draggedPhoto.transform = CGAffineTransformMakeScale(1.2, 1.2);}
                 completion:nil];