iOS-导航栏内的动画不';行不通
我有一个场景,我需要在导航栏中添加动画,但是模拟器没有动画。我添加了一个UIView,添加了一个标签/文本字段,为约束创建了出口,并使用“UIView animateWithDuration”更新它们,相反,模拟器只是更新约束并相应地显示视图,但没有任何动画。我尝试过修改约束和框架(分别) 当我在viewDidLoad:中将宽度约束增加“60”时,会显示这一点。结果是非动画的 当我通过点击按钮来配置约束(增加宽度“60”)时,即使是静态更新也不会发生 不过,同样的代码在UIView内的导航栏外也能完美地工作iOS-导航栏内的动画不';行不通,ios,objective-c,animation,uinavigationbar,quartz-core,Ios,Objective C,Animation,Uinavigationbar,Quartz Core,我有一个场景,我需要在导航栏中添加动画,但是模拟器没有动画。我添加了一个UIView,添加了一个标签/文本字段,为约束创建了出口,并使用“UIView animateWithDuration”更新它们,相反,模拟器只是更新约束并相应地显示视图,但没有任何动画。我尝试过修改约束和框架(分别) 当我在viewDidLoad:中将宽度约束增加“60”时,会显示这一点。结果是非动画的 当我通过点击按钮来配置约束(增加宽度“60”)时,即使是静态更新也不会发生 不过,同样的代码在UIView内的导航栏
感谢您的帮助。如果您的导航栏包含一些动画,那么您可以尝试绘制自定义导航栏。以下是您要做的:
viewDidLoad()
方法中的视图控制器中添加以下代码
self.navigationController.navigationBarHidden=YES代码>
ui视图
创建一个自定义导航栏,将框架调整为可见和顶部之后,在视图中添加组件并开始使用动画。好的,我终于解决了这个问题。呸 我所做的是
[self.superView layoutIfNeeded];
祝您好运。您可以通过使用自定义UIView并为其创建width NSLayoutConstraint outlet来实现这一点,在代码中,您可以通过调用动画代码之前调用UpdateConstraintsIfNeeded或UpdateViewConstraints方法来处理此变量的常量属性。为什么不尝试使用自定义导航栏?是否尝试添加在导航栏上创建uiview并在该视图中制作动画?@T_77是的,我就是这么做的。对不起,我忘了提那件事。我在导航栏中添加了UIView,并在其顶部添加了标签。而且这不是因为我的代码太乱。我在一个新项目中尝试了它,结果是一样的:(@manish_kumar hmm…。我会尝试。但是,为什么你认为自定义导航会解决这个问题呢?自定义导航栏我指的是用作导航栏的
UIView
。通过它,你可以轻松工作并添加任何你想要的功能。
[self.superView layoutIfNeeded];