Bbx*_*Bbx 6 animation subclass uiview ios catransformlayer
我创建了一个" TransformView"子类UIView,以支持我在翻转动画中使用的双面视图.这已在其他帖子中提出,例如:
@interface TransformView : UIView
@end
@implementation TransformView
+ (Class)layerClass {
return [CATransformLayer class];
}
@end
Run Code Online (Sandbox Code Playgroud)
一切正常,但每次使用以下命令创建TransformView对象时都会收到警告:
TransformView *newTransformView=[[TransformView alloc] initWithFrame:frame];
Run Code Online (Sandbox Code Playgroud)
警告说:
- 在仅变换图层中更改属性不透明将不起作用
我想这个UIView类正在初始化不透明属性,这通常适用于CALayer但不是a CATransformLayer.
子类代码是不是很狡猾?如果是这样,你怎么能为翻转动画创建一个双面视图?
有关如何停止警告的任何想法?
我怀疑TransformView从一个nib文件创建而不是initWithFrame避免警告,但似乎很麻烦,为了避免警告必须这样做.
您可以通过在代码中的某个位置添加此扩展来避免警告:
@implementation CATransformLayer (MyExtension)
-(void)setOpaque:(BOOL)opaque
{
return;
}
@end
Run Code Online (Sandbox Code Playgroud)
当然,这也将停止警告您自己错误地尝试设置 CATransformLayer 的不透明属性。
| 归档时间: |
|
| 查看次数: |
5339 次 |
| 最近记录: |