我有一个视图,我已经将其分层能力设置为1.

    theView.layer.shadowOpacity = 1.0;

当视图在屏幕下方更远时,这看起来很好.当我将这个视图向上移动以与另一个有阴影的视图齐平时,它们看起来不太好.有没有办法让我的图层上的shadowOpacity变成0?我try 使用动画块,但似乎该属性不可设置动画.

alt text

EDIT:对不起作用的代码的请求:

[UIView animateWithDuration:1.0 animations:^{
    splitView2.layer.shadowOpacity = 0;}
                 completion:NULL];

推荐答案

这将正常工作:

#import <QuartzCore/CAAnimation.h>

CABasicAnimation *anim = [CABasicAnimation animationWithKeyPath:@"shadowOpacity"];
anim.fromValue = [NSNumber numberWithFloat:1.0];
anim.toValue = [NSNumber numberWithFloat:0.0];
anim.duration = 1.0;
[vv.layer addAnimation:anim forKey:@"shadowOpacity"];
vv.layer.shadowOpacity = 0.0;

For Swift 3.0:

 let animation = CABasicAnimation(keyPath: "shadowOpacity")
 animation.fromValue = layer.shadowOpacity
 animation.toValue = 0.0
 animation.duration = 1.0
 view.layer.add(animation, forKey: animation.keyPath)
 view.layer.shadowOpacity = 0.0

Objective-c相关问答推荐

TWTweetComposeViewController 在 IOS6 中已弃用

iPhone:将日期字符串转换为相对时间戳

在@implementation 而不是@interface 定义的类变量?

#if 和 #ifdef Objective-C 预处理器宏有什么区别?

如何初始化 NSString 的数组?

如何从 Xcode4 生成 UML 图

CoreData 关系故障?

如何更改 UICollectionView 中的滚动方向?

将 NSArray 转换为 NSDictionary

我们可以在 UIPageViewController 中自定义页面指示器吗?

UILabel 的角半径属性在 iOS 7.1 中不起作用

如何在 iPhone 上画出讲话泡泡?

立即检测 iOS 方向变化

UICollectionView 更新单个单元格

IOS 6强制设备方向为横向

如何在 UITextField 上自动打开键盘?

AppDelegate 的当前视图控制器?

请求访问相机胶卷的权限

状态栏文本 colored颜色 iOS 7

iPhone - dequeueReusableCellWithIdentifier 用法