iOS自定义弹窗的推出收回动画

弹窗动画.gif

项目中很多时候需要自定义弹窗,但是我们又不仅仅满足于死板的显示消失,何不加两句代码让你的弹窗漂亮登场呢?

结构:


123.png

底部推出的效果

  • 由效果结合结构看出,控制的其实只是Collectionview ,只用到啦View的动画Block和相对移动知识点
  • transform 相对移动 参考点当前视图Fram(0,0)
//1.先正常创建collectionview 
_collectionview=[[UICollectionView alloc]initWithFrame:CGRectMake(0,kScreenHeigth-100-SafeAreaBoHttomHeight, kScreenWidth, 100) 
collectionViewLayout:layout];
//2.相对移动 往下移动高的距离(本例为100),还有一种方法,创建时y的坐标就再加上高,达到同样的效果
   _collectionview.transform = CGAffineTransformMakeTranslation(0, 100);
//3.加个view的简单动画,设个觉得可以的动画时间
 [UIView animateWithDuration:0.4 animations:^{
            self.collectionview.transform = CGAffineTransformMakeTranslation(0, 0);
        }];

消失收回的效果

  • 原理和推出一样,在动画结束后消失视图
//先移动试图到底部,动画结束,移除视图
  [UIView animateWithDuration:0.4 animations:^{
        self.collectionview.transform = CGAffineTransformMakeTranslation(0, 100);
    } completion:^(BOOL finished) {
         [self removeFromSuperview];
    }];

github地址

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容