iphone - 动画 self.view.window.frame 变化

标签 iphone ios xcode cocoa-touch

我正在使用带有 block 的动画,并且我正在尝试对主窗口框架的更改进行动画处理。 这是我的代码:

[UIView animateWithDuration:0.3f animations:^{
            [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
            self.view.window.frame = CGRectMake(0.0f, -20.0f, self.view.window.frame.size.width, self.view.window.frame.size.height+20);
}];

但是它不会像 self.view.frame 更改或其他东西那样进行动画处理。这只是没有动画的垃圾。

有什么想法吗?

最佳答案

这是错误的,窗口在框架和边界中是固定的, 您无法移动 Window,它的顶部根容器并且具有恒定的大小,您应该仅像这样平移和转换您的 View 。

[UIView animateWithDuration:0.3f animations:^{
            [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
            self.view.frame = CGRectMake(0.0f, -20.0f, self.view.frame.size.width, self.view.frame.size.height+20);
}];

关于iphone - 动画 self.view.window.frame 变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13532822/

相关文章:

iphone - 让 AVFoundation 框架在屏幕褪色时不褪色

iOS Xcode 开发构建,在什么情况下部署在设备上的构建会失效?

ios - 如何获取UIScrollView中显示区域的中心?

ios - Restkit v.20 中的映射数组

ios - 使用 Social Framework 从 Facebook 注销

ios - 在 React Native 中居中 PickerIOS

iphone - 当输入 2 个连续空格时,如何以编程方式避免 iPhone/iPad 在文本字段中添加 '.' 字符?

ios - 使用 corelocation 框架计算速度显示在模拟器中而不是在 device-ios8 中

ios - Xcode 8.1 自动布局

ios - 为我的计算器添加小数点