利用UIMotionEffect 实现UIAlertView那种随着设备在空间的移动而发生微移

本文详细介绍了如何使用Core Animation在iOS应用中实现垂直和水平方向的微小位移动画效果,通过创建`UIInterpolatingMotionEffect`实例并设置其关键路径和相对值范围来实现动画,最后将这些效果组合到`UIMotionEffectGroup`中应用到指定视图上。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  //设置垂直方向微移的范围
 UIInterpolatingMotionEffect *verticalMotionEffect =[[UIInterpolatingMotionEffect alloc]initWithKeyPath:@"center.y" type:UIInterpolatingMotionEffectTypeTiltAlongVerticalAxis];
    verticalMotionEffect.minimumRelativeValue =@(-30);
    verticalMotionEffect.maximumRelativeValue =@(30);
    
  //设置水平方向微移的范围
    UIInterpolatingMotionEffect* horizonMotionEffect = [[UIInterpolatingMotionEffect alloc]initWithKeyPath:@"center.x" type:UIInterpolatingMotionEffectTypeTiltAlongHorizontalAxis];
    horizonMotionEffect.minimumRelativeValue =@(-30);
    horizonMotionEffect.maximumRelativeValue =@(30);

    UIMotionEffectGroup* group =[UIMotionEffectGroup new];
    group.motionEffects =@[verticalMotionEffect ,horizonMotionEffect];
    [self.myImage addMotionEffect:group];


  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值