动画搜索字段不会保留其新位置

时间:2015-03-24 08:01:26

标签: objective-c macos cocoa

我正在设置NSSearchField移动窗口的位置。动画本身工作正常但有时搜索字段不保留其新位置。我发现这与AutoLayout(已经为XIB启用)有关,而在iOS上有layoutIfNeeded的{​​{1}}函数。

是否有与OS X应用程序类似的内容?我试过这个:

UIViews

这似乎有效......差不多。

在用户导航期间,搜索字段在隐藏和可见状态之间切换。当用户在这些状态之间切换时,一切都很好(搜索字段保持在新位置)。 但是当用户将焦点设置在搜索字段上时(通过单击它)并向前和向后导航,搜索字段将显示在其旧位置。

有没有人知道为什么会发生这种情况?

更新

我刚刚为搜索字段的[self.searchField updateConstraints]; [self.searchField layout]; 属性添加了一个观察者,以便查看帧何时再次更改。这显示了我上面描述的内容:当用户在视图之间切换时,一切都很好。但是,如果用户将焦点放在搜索字段上并切换视图,则frame将被设置回其原始值。

我还尝试实现frame通知,并明确将帧设置为新值。但这并不奏效。

更新2

这是我用来设置搜索字段动画的代码:

NSMutableArray * array = [[NSMutableArray alloc] init];

animationDidEnd:

0 个答案:

没有答案