2013-03-09 30 views
0

我想动画化UISearchbar的框架更改。我希望它在点击搜索按钮时展开和折叠。如何动画UISearchbar框架更改保持圆形的帽子?

正在使用UIViewAnimationBlock动画

[UIView animateWithDuration:0.5 
           delay:0 
          options:UIViewAnimationOptionLayoutSubviews 
         animations:^{ 
          //Set the frame you want to the search bar 
         } 
         completion:^(BOOL finished) { 

         }]; 

我不得不从零扩大框架和折叠回来。但是,当动画时,搜索栏会丢失其圆角并变成矩形。这是它的截图,同时仍然具有动画效果enter image description here

它看起来不太好..我希望它在展开或折叠时保持其圆边。可能吗 ?如果是的话如何?

任何帮助将不胜感激。

回答

2

您无法更改高度为44px的UISearchBar尝试设置框架的高度。

如果你想改变高度,然后使用CGAffineTransformMakeScale如..

//FOR EXPAND USE THIS: 

[UIView animateWithDuration:0.5 
           delay:0 
          options:UIViewAnimationOptionLayoutSubviews 
         animations:^{ 
          self.searchBar.transform = CGAffineTransformMakeScale(1.0, 1.0); 
         } 
         completion:^(BOOL finished) { 

         }]; 

// FOR展开使用此:

[UIView animateWithDuration:0.5 
           delay:0 
          options:UIViewAnimationOptionLayoutSubviews 
         animations:^{ 
          self.searchBar.transform = CGAffineTransformMakeScale(0.001, 0.001); 
         } 
         completion:^(BOOL finished) { 

         }];