我以这种方式将 a 添加UIInterpolatingMotionEffect
到 s 中的一些视图中UITableViewCell
:
UIInterpolatingMotionEffect *horizontalEffect = [[UIInterpolatingMotionEffect alloc] initWithKeyPath:@"center.x" type:UIInterpolatingMotionEffectTypeTiltAlongHorizontalAxis];
UIInterpolatingMotionEffect *verticalEffect = [[UIInterpolatingMotionEffect alloc] initWithKeyPath:@"center.y" type:UIInterpolatingMotionEffectTypeTiltAlongVerticalAxis];
horizontalEffect.minimumRelativeValue = @(-horizontal);
horizontalEffect.maximumRelativeValue = @(horizontal);
verticalEffect.minimumRelativeValue = @(-vertical);
verticalEffect.maximumRelativeValue = @(vertical);
UIMotionEffectGroup *effectsGroup = [UIMotionEffectGroup new];
effectsGroup.motionEffects = @[horizontalEffect, verticalEffect];
[view addMotionEffect:effectsGroup];
问题是效果只是随机出现,有些视图会得到效果,而有些则不会。在推动视图控制器并返回后,其他一些工作,而另一些则没有。
有什么我想念的吗?每次重复使用单元格时都应该应用效果吗?