菜鸟教程小白 发表于 2022-12-12 12:17:32

ios - 如何暂停uiview动画?


                                            <p><p>如何暂停 uiview 动画并将其留在原处?</p>

<pre><code>//#define ANIMATION_WORM_OPTIONS (UIViewAnimationOptionCurveLinear|
// UIViewAnimationOptionBeginFromCurrentState)
- (IBAction)pressUp:(id)sender {
    ;

    ;
    [UIView animateWithDuration:5 delay:0 options:ANIMATION_WORM_OPTIONS
                     animations:^{
                           ;
                     } completion:^(BOOL finished) {

                     }];
}
- (IBAction)pressRight:(id)sender {
   ;
    [UIView animateWithDuration:5 delay:0 options:ANIMATION_WORM_OPTIONS
                     animations:^{
                         ;
                     } completion:^(BOOL finished) {

                     }];
}
</code></pre>

<p>例如,这是我想要做的:</p>

<p>当我第一次点击“右”时,一条蠕虫会向右移动。 </p>

<p>然后当我在蠕虫向右移动时点击“向上”,蠕虫应该停止并向上。</p>

<p>我的代码中的问题是 <code>removeAllAnimations</code> 将首先将蠕虫放在第一个动画结束的末尾,然后开始上升。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>您需要将 View 的框架更改为停止位置框架。只需在 view.layer 上执行 removeAllAnimation 之前添加以下内容。 </p>

<pre><code>self.theView.frame = ;
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 如何暂停uiview动画?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/26579338/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/26579338/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 如何暂停uiview动画?