HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 错误:UIView的窗口不等于另一个视图的窗口大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我是一名@L_450_0@学习初学者的程序员.首先发布在这里.

额外信息,但可能没必要
在我创建的这个应用程序中,用户在主View控制器上选择一个图像并将其传递给第二个视图控制器.在那里,图像被分解成碎片,这些碎片被放置在单独的UIImageViews中.目标是通过交换图像使它们按正确的顺序排列.

一切都很好,它在模拟器中运行正常.但是,我试添加基本动画(移动UIImageViews),但它们没有执行.我知道我有正确的动画语法,因为我在另一个项目中测试了代码.

主要问题
当我从主视图控制器导航到第二个视图控制器时,控制台中会立即出现错误.这是它说的:

2014-09-04 17:51:33.489 TileGame [79951:95150647] UIView:0x7f7fe9c84600; frame =(0 0; 320 568); autoresize = W H; layer = CALayer:0x7f7fe9c848d0>>的窗口不等于TileGame.GameScreen:0x7f7fe9dc6bc0>的视图窗口!

我无法弄清楚它意味着什么,但它似乎没有造成任何问题,除了阻碍动画.有任何想法吗??

看起来这个人有类似错误信息,但可能比我的应用程序更复杂. Modal viewcontroller UI not responsive after presentViewController:animated:completion:

这是我在GitHub上的整个项目:https://github.com/pakalewis/Parker-Lewis-CF/tree/master/TileGame

谢谢

解决方法

您似乎对iOS编程范例有一些基本的误解.你有按钮附加segue,但你也可以在代码调用performSegue.如果将segue连接到控件,则不需要任何代码(也不应该有任何代码)来执行segue.除了展开segue之外,你也不应该回到带有segue的前一个视图控制器;你真的没有回头,你正在创建一个你认为你会回到的控制器的新实例.这将导致控制器的建立(因为没有将被解除分配),直到您的应用程序内存不足.

因此,您应该从MainScreen中删除函数letsPlayButton:并在storyboard中删除它(只需附加到该按钮的seguE).

删除你从GameScreen“返回”到主屏幕的segue,并将BACkToMainScreen中的代码更改为,

@IBACtion func BACkToMainScreen(sender: AnyObject) {
        self.dismissviewControllerAnimated(true,completion: nil)
    }

大佬总结

以上是大佬教程为你收集整理的ios – 错误:UIView的窗口不等于另一个视图的窗口全部内容,希望文章能够帮你解决ios – 错误:UIView的窗口不等于另一个视图的窗口所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。