欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

iOS中给自定义tabBar的按钮添加点击放大缩小的动画效果

程序员文章站 2024-02-15 09:20:34
之前想过一些通过第三方的方式实现动画,感觉有点麻烦,就自己写了一个 不足之处还望大家多多指出 // 一句话,写在uitabbarcontroller.m脚本中,...

之前想过一些通过第三方的方式实现动画,感觉有点麻烦,就自己写了一个

不足之处还望大家多多指出

// 一句话,写在uitabbarcontroller.m脚本中,tabbar是自动执行的方法 
// 点击tabbaritem自动调用 
-(void)tabbar:(uitabbar *)tabbar didselectitem:(uitabbaritem *)item 
{ 
nsinteger index = [self.tabbar.items indexofobject:item]; 
[self animationwithindex:index]; 
if([item.title isequaltostring:@"发现"]) 
{ 
// 也可以判断标题,然后做自己想做的事<img alt="得意" src="http://static.blog.csdn.net/xheditor/xheditor_emot/default/proud.gif" /> 
} 
} 
- (void)animationwithindex:(nsinteger) index { 
nsmutablearray * tabbarbuttonarray = [nsmutablearray array]; 
for (uiview *tabbarbutton in self.tabbar.subviews) { 
if ([tabbarbutton iskindofclass:nsclassfromstring(@"uitabbarbutton")]) { 
[tabbarbuttonarray addobject:tabbarbutton]; 
} 
} 
cabasicanimation*pulse = [cabasicanimation animationwithkeypath:@"transform.scale"]; 
pulse.timingfunction= [camediatimingfunction functionwithname:kcamediatimingfunctioneaseineaseout]; 
pulse.duration = 0.08; 
pulse.repeatcount= 1; 
pulse.autoreverses= yes; 
pulse.fromvalue= [nsnumber numberwithfloat:0.7]; 
pulse.tovalue= [nsnumber numberwithfloat:1.3]; 
[[tabbarbuttonarray[index] layer] 
addanimation:pulse forkey:nil]; 
}

以上所述是小编给大家介绍的ios中给自定义tabbar的按钮添加点击放大缩小的动画效果,希望对大家有所帮助