gpt4 book ai didi

ios MapKit MKOverlayView 动画立即发生

转载 作者:可可西里 更新时间:2023-11-01 04:03:47 26 4
gpt4 key购买 nike

我正在尝试使用以下代码为 iOS 5 中的 MapKit 覆盖 View (特别是 MKCircleView)的 alpha 值设置动画:

-(void) animateCircle:(MKCircle*)circle onMap:(MKMapView*) mapView
{
MKCircleView * circleView = (MKCircleView*) [mapView viewForOverlay:circle];
UIViewAnimationOptions options = UIViewAnimationOptionCurveEaseInOut|UIViewAnimationOptionTransitionNone;
[UIView animateWithDuration:5.0
delay:0.0
options:options
animations:^(void) { circleView.alpha = 0.9; }
completion:^(BOOL finished) {}
];
}

叠加层的 alpha 值正在按我的意愿变化,但它是瞬间跳到那里而不是在指定的持续时间内设置动画。

任何人都可以提出什么可能是错误的吗?也许叠加 View 上的动画比我想象的更复杂。

最佳答案

当并发动画影响同一个 View 时,核心动画有有趣的行为......如果你试图在 View 的最后一个动画完成之前为 View 设置动画,它会假设你打算后续动画从所需的结束状态开始最初的一个。这会导致帧跳跃以及 alpha 值跳跃。

在您的情况下,此 View 可能会被其他东西激活。尝试在 UIViewAnimationOptionBeginFromCurrentState 中定位并移除其他动画/或'ing 到它的选项。

关于ios MapKit MKOverlayView 动画立即发生,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8021209/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com