iOS标签栏中的自定义和动画按钮

时间:2013-08-21 15:02:50

标签: ios uitabbar tabbarcontroller

我正在尝试为iPhone(iOS 6)获取一个自定义标签栏,我必须管理一个中央按钮,该按钮会在栏上升起(基于代码,https://github.com/tciuro/CustomTabBar),但现在我必须面对另一个功能:点击时按钮必须闪烁,并且必须删除光泽效果。关于获得最佳方法的任何建议?我仍然是iOS及其动画的相对较新的编程。

非常感谢

到目前为止我已经拥有的东西:

enter image description here

enter image description here

enter image description here

在MBCenteredButtonVC(故事板中的主条目)

#import <UIKit/UIKit.h>

@interface MBCenteredButtonViewController : UITabBarController <UITabBarDelegate>

@property(nonatomic, weak) IBOutlet UIButton *centerButton;


@end

及其实施:

 - (void)viewDidLoad
   {
       [super viewDidLoad];

       [self.tabBar setSelectedImageTintColor:[UIColor colorWithRed:171/225.0 green:233/255.0 blue:8/255.0 alpha:1]]; 
       [self.tabBar setBackgroundImage:[UIImage imageNamed:@"bar-back.png"]];

    // Do any additional setup after loading the view.
      [self addCenterButtonWithImage:[UIImage imageNamed:@"button-rocketBg.png"] highlightImage:[UIImage imageNamed:@"button-rocketBg-active.png"] target:self action:@selector(buttonPressed:)];
   }

使用XCode在视图属性中定义每个项目的图像。所以,通过这种方式,我得到一个中央按钮,其余部分已经改变了所选项目的颜色,但我需要在内容加载时闪烁(假设可能需要一些时间)。

我觉得在按下按钮时我必须实现这个功能:

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
{
    NSLog(@"Selected tab bar item: %i", item.tag);


    }
}

但不确定它是否正确以及如何正确完成。

1 个答案:

答案 0 :(得分:2)

在iOS上开始使用动画的最简单方法可能是使用UIView animateWithDuration:(NSTimeInterval)duration animations:(void (^)(void))animations方法。

此处的文档:https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIView_Class/UIView/UIView.html#//apple_ref/doc/uid/TP40006816-CH3-SW111

您在该块中更改的任何可动画的值都将被设置为动画。

核心动画是广泛的,这几乎没有说明可以做什么,但它可能足以让你开始。