自定义 UIToolbar 用动画调整大小
Posted
技术标签:
【中文标题】自定义 UIToolbar 用动画调整大小【英文标题】:Custom UIToolbar resize with animation 【发布时间】:2012-04-03 12:02:55 【问题描述】:我正在使用这段代码来调整我的自定义 UIToolbar 的大小以更改宽度属性
[UIView animateWithDuration:0.3 delay:0.3 options:0 animations:^
self.navToolbar.frame=CGRectMake(0, 0, 200, 30);
completion:nil];
上面的代码,正确改变宽度但没有动画, 谁能告诉我为什么?
谢谢
【问题讨论】:
尝试至少 1 秒的持续时间。如果这有帮助,那么您必须通过动画持续时间来调整动画效果 我更改了持续时间,但没有任何变化。 什么ios? 4以上吗? 我已经用UINavigationBar
和UIToolbar
测试了你的代码并且工作正常。我想这与您的插座有关...您是在 Interface Builder 中还是在代码中实例化工具栏?
我不知道为什么,但现在它可以工作了,工具栏的宽度现在随着动画而变化,而不是 UIBarButtonItems
【参考方案1】:
UIViewAnimationOptionLayoutSubviews
(iOS > 4.0) 应该可以解决大小变化没有动画化时的问题。
[UIView animateWithDuration:0.3
delay:0.3
options:UIViewAnimationOptionLayoutSubviews
animations:^
self.navToolbar.frame=CGRectMake(0, 0, 200, 30);
completion:nil
];
【讨论】:
以上是关于自定义 UIToolbar 用动画调整大小的主要内容,如果未能解决你的问题,请参考以下文章
UICollectionView:使用动画和自定义布局调整单元格大小
UICollectionView 自定义布局动画故障,在 performBatchUpdates 上具有自我调整单元格大小