iphone在使用tabbar时如何使用转换动画

iphone在使用tabbar时如何使用转换动画

 

今天参考《iphone3 开发基础教程》这本书的写了一个例子,用到了UITabBarController,但是发现一个问题,教程提供的例子里切换界面时没有动画效果,体验效果很不好。之前的例子在添加动画时,界面的跳转是由自己来实现的,类似下面的代码:

 

1

2

3

4

5

6

7

8

9

10

[yellowViewController.view removeFromSuperview];

 

CATransition* animation = [CATransition animation];

[animation setDuration:0.5f];

[animation setType:kCATransitionPush];

[animation setSubtype:kCATransitionFromRight];

[animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut]];

[[self.view layer]addAnimation:animation forKey:@"switchView"];

 

[self.view insertSubview:blueViewController.view atIndex:0];

将动画的代码放在两个界面切换的中间就行了。

 

但是这里界面切换的实现全部由UITabBarController,也就是系统自动帮你来实现了,要在哪里添加动画代码呢?

很简单,写一个类继承自UITabBarController,然后实现下面这个委托方法就行了:

1

2

3

4

5

6

7

8

9

-(void)tabBar:(UITabBar*)atabBar didSelectItem:(UITabBarItem*)item

{

    CATransition* animation = [CATransition animation];

    [animation setDuration:0.5f];

    [animation setType:kCATransitionFade];

    [animation setSubtype:kCATransitionFromRight];

    [animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut]];

    [[self.view layer]addAnimation:animation forKey:@"switchView"];

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值