视图渐变动画突兀现象的解释
【视图渐变动画突兀现象的解释】如果项目中控件的约束用的是masonry,现在希望实现点击按钮渐变出现控件,那么方法有很多种,其中通过UIView的Animation方法是可以实现的.但是这里会有一个小坑,可能会造成出现的动画效果和预期的不一样.原因在于所需要动画控件的容器里面内容的多少.
// 1.实例化控件并通过masonry设置约束
UILabel *label = [UILabel createOneLabel:CGRectZero title:@"test" superView:self.view fontSize:13 textColor:[UIColor redColor]];
self.label = label;
label.backgroundColor = [UIColor grayColor];
[label mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.trailing.equalTo(self.view);
make.height.equalTo(@30);
make.top.equalTo(self.view).offset(400);
}];
// 2.点击按钮的方法中实现动画效果
[UIView animateWithDuration:2 animations:^{
if (btn.selected == YES) {
self.label.height = 100;
}else{
// 和文本内容有关
// 如果容器内部内容所需高度大于height那么就是所需要的渐变
// 如果容器没有内容,那么渐变的效果就突兀了
self.label.height = 15;
}
}];
- 这是label没有文字显示出来的效果,当动画中height改为0就不会有这种突兀了
文章图片
432.gif - 当label中有文字,则根据文字具体大小,动画效果是不同的.
文章图片
123123.gif
推荐阅读
- iOS核心动画1——认识图层CALayer
- mysql|MySQL教程 - 视图(View)
- android 自定义View: 视差动画
- vant|修改 vant Collapse 折叠面板右侧图标及其颜色,保留原来动画
- 使用|使用 Busy Dialog 动画阻止 SAP UI5 应用按钮短时间内快速被点击试读版
- Python语言程序设计|基于Python-matplotlib 的动画绘制问题
- 电影|暑期档不再是动画电影的最佳CP?
- UI进阶路径动画
- Android|Android 动画套路
- VS2008+GDI实现多幅图像的GIF动画制作