标签栏动画

时间:2011-12-22 23:33:13

标签: ios animation uitabbarcontroller

我正在制作一个标签栏iphone应用程序,我想要一个动画标签栏图标,我找不到任何有用的东西,它可能不可能,也许你们其中一个做过类似的事情?

1 个答案:

答案 0 :(得分:3)

不确定您是否已经解决了这个问题,或者您不再需要这样做,但这可以通过几种方式实现。您可以从头开始完全创建自己的TabBar,并构建一个动画图像的机制。或者,正如我想你想的那样,你可以调整一个UITabBarController来为你做这个。

首次设置标签栏的项目时,在控制器中:

[self.tabBar setItems:(NSArray *)items animated:(BOOL)animated];

self是你的UITabBarController。在此之前你应该已经创建了你的UITabBarItems以放入tabBar(我假设你知道如何做到这一点,如果不让我知道),你需要保留你想要在属性中制作动画的那些。

@property (retain) UITabBarItem *animatingTabBarItem;

OR

@property (retain) NSMutableArray *animatingTabBarItems;

如果您有几个想要制作动画的内容。

因此,当您在标签栏上创建设置项目时,也会启动计时器,例如

[NSTimer scheduledTimerWithTimeInterval:0.2 target:self selector:@selector(animateTabBar) userInfo:nil repeats:YES];

这意味着该方法,

- (void)animateTabBar {

}

每0.2秒就会命中一次。确保您已在界面中定义了该方法,无论是在.h文件中还是在.m文件的顶部。在这种方法召回中,

[self.tabBar setItems:(NSArray *)items animated:(BOOL)animated];

使用一组新的UITabBarItems,其中包含动画中下一帧所需的图像,可以在某处(可能是NSUInteger ivar)保存动画帧的存储,然后在图像之间切换在你的计时器方法。这个动画看起来有点像电影书动画。

希望这有帮助,如果不让我知道,我会看到我能做什么:)