在UIView加载后加载UIButton

时间:2013-05-16 17:36:16

标签: ios user-interface uibutton

我有一组显示在UIViewController中心的按钮。为了说明当视图加载时按钮一个接一个地弹出/出现在视图上的效果我试图在我的UIViewController加载之后加载UIButtons或者在一秒钟内加载它们以便它们加载很快但是视图加载后,按钮会有一个视觉动画弹出窗口。

有没有人用UIButton做这个例子?

4 个答案:

答案 0 :(得分:2)

最初,当视图控制器收到viewDidLoad的来电时,您要设置按钮,使其为零alpha

然后,在viewDidAppear:中,您可以配置一组动画以显示按钮:

[UIView animateWithDuration:<#(NSTimeInterval)#>
                      delay:<#(NSTimeInterval)#>
                    options:<#(UIViewAnimationOptions)#>
                 animations:<#^(void)animations#>
                 completion:<#^(BOOL finished)completion#>]

使用delay分隔每个按钮和animations块的显示,以指定按钮的显示方式。在动画块中,您可以将alpha设置为1以使按钮显示。您还可以向按钮添加比例transform,使其大小发生变化(对于弹出效果)。

答案 1 :(得分:2)

你可能想要这样的东西:

- (void)viewWillA pear:(BOOL)animated {
    [super viewWillAppear:animated];
    _button.alpha = 0;
    UIView animateWithDuration:1 animations:^{
        _button.alpha = 1;
    }];
}

答案 2 :(得分:2)

您可以随时增加Alpha。从0.0f开始到1.0f结束。它会使褪色效果,并开始隐形。

              yourButton.alpha = 0.0f;
             [yourView addSubview:yourButton];

             [UIView animateWithDuration:1.0
                  delay:0.0
                options: UIViewAnimationCurveEaseInOut
             animations:^{yourButton.alpha = 1.0;}
             completion:nil];

答案 3 :(得分:1)

在viewDidApper方法中使用NSTimer跟随方法

[NSTimer scheduledTimerWithTimeInterval:1.0     目标:自     选择:@选择(targetMethod :)     用户信息:无     重复:NO];

// write targetMethod:每隔1秒调用一次此方法。编写代码以在该方法中将按钮作为子视图添加到屏幕,或者如果您可以控制按钮的可见性,则在targetMethod中使按钮可见。当所有按钮完全加载时,使用NSTimer的invalidate方法来停止调用targetMethod。