iphone - 带有动画的 UIButton 图像按钮

标签 iphone objective-c ios

我有一个白色图像按钮。当我点击时,它应该通过从底部到顶部的动画变为黄色按钮图像,如果我再次单击黄色按钮图像它必须从上到下动画并变为白色图像按钮图像。

这是我尝试过的:

    float originalY = btn.frame.origin.y; 
    float originalH = btn.bounds.size.height;

    [UIView animateWithDuration:3.0f delay:1.0f     options:UIViewAnimationOptionTransitionFlipFromBottom animations:^{

    btn.frame = CGRectMake(btn.frame.origin.x, (originalY + originalH), btn.bounds.size.width, 0);

    [btn setBackgroundImage:[UIImage imageNamed:@"yellowimg.png"] forState:UIControlStateNormal];

    [btn setTitleColor:[[UIColor alloc]initWithRed:38.0/255.0 green:38.0/255.0 blue:38.0/255.0 alpha:1.0] forState:UIControlStateNormal];

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

最佳答案

btn.frame = CGRectMake(btn.frame.origin.x, (originalY + originalH), btn.bounds.size.width, 0);

此方法将使您的按钮具有 height = 0。 如果你想 curl (翻转)你的按钮并拥有从第一个出现的"new"按钮,我知道你应该使用类似的东西

[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.5];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:firstView cache:YES];
[firstView addSubview:secondView];
[UIView commitAnimations];

关于iphone - 带有动画的 UIButton 图像按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13271374/

相关文章:

objective-c - 在 Objective-C 中,有没有办法指定您希望 @selector() 使用哪个选择器定义?

objective-c - Obj-c 中的 typedef 结构

ios - 启动 iPhone 应用程序的附加组件

ios - 获取两个 NSDate 之间的准确时差?

iphone - 找不到 cassert 文件,但我使用 Box2d 模板

iphone - 在应用程序商店中转让 iPhone 应用程序的所有权

iphone - UITextField 在代码更改时触发 UITextFieldTextDidChangeNotification?

iphone - 如何识别已呈现 UIViewController

ios - 具有自定义委托(delegate)或数据源的 View Controller 的状态保存

iphone - UITableView deleteRowsAtIndexPaths 不删除行