2

我一直在阅读UIView animateWithDuration我正在尝试使用的内容,因此当按下按钮时,会出现一个图形,然后慢慢淡出(即 alpha 设置为 0)。

我在 viewdidload 中使用以下代码仅用于测试目的,但它不起作用:

[UIView animateWithDuration:10 animations:^{
        self.completeImage.alpha = 1.0;
        self.completeImage.alpha = 0.5;
        self.completeImage.alpha = 0.0;
    }];

有任何想法吗?

谢谢。

4

1 回答 1

2

这不起作用,因为它会自动将 alpha 设置为 0.0;3 行代码同时执行(一个接一个)。

使用UView 动画块的正确方法是这样的:

     self.completeImage.alpha = 0.0; 
     [UIView animateWithDuration:2.0
            animations:^{ 
                  // do first animation
                  self.completeImage.alpha = 1.0;

            } 
            completion:^(BOOL finished){

                [UIView animateWithDuration:2.0
                        animations:^{ 
                             // do second animation
                              self.completeImage.alpha = 0.0;

                        } 
                        completion:^(BOOL finished){
                            ;
                        }];

            }];

希望这能达到你想要的。

此外:

“我正在尝试使用,所以当按下按钮时,会出现一个图形,然后慢慢淡出(即 alpha 设置为 0)。”

根据您在问题中的上述信息,在 viewDidLoad 中添加代码不会有成效。您需要在按钮的操作目标方法中添加此代码,以便在单击按钮时播放动画。一般来说,如果你使用的是笔尖,那么操作方法如下:

-(IBAction)on_pressing_my_button:(id)sender
{
   ///your animation code goes here..
}
于 2013-09-03T13:15:23.243 回答