内容BEFORE说明奇怪缠结
这是因为如果故事板被处理表作为指针指向的单个实例,仅仅是因为我复制并通过故事板粘贴。我在这里记录这部分是为了提醒自己(我是Stack Overflow的狂热用户)并向其他人发出警告。当然,我想知道是否有一种简单的方法来真正地解决这两个问题,而不必从头开始重新创建一个ViewController。请阅读以获得解释。
背后的故事
首先我创建CatUIViewController用故事板。我完成了整个事情以及.h
和.m
文件。然后,需要一个类似的ViewController for Dogs,我将一个空的ViewController拖放到Object Library的Storyboard中,然后将整个UITableView从CatUIViewController复制并粘贴到DogUIViewController。当然,我也对.h
和.m
文件做了同样的处理。真的,CatUIViewController和DogUIViewController唯一的区别在于Cat的头部有两个按钮,而Dog有一个UIImageView以及两个头部共享的其他数据。
自然,Xcode在我粘贴到Dog等价物的那一刻为我做了所有连接。它自动连接所有IBOutlets和IBActions:Xcode的一个很好的功能。
进一步详细
两个表视图具有一个背景图像。从猫到狗的导航是可能的,因为我的应用程序使用UITabBar - 两者之间不存在其他链接。此外,虽然Cat领先其Tab,但Dog却在Tab的NavigationController中沿着线条向下。
的问题
问题是这样的:如果我在DogUIViewController并单击该选项卡过渡到CatUIViewController,过渡DogUIViewController的背景显示为CatUIViewController的背景之后。事实上,如果我访问DogUIViewController,然后导航到任何其他页面,那么......第二次,我单击CatUIViewController的Tab,神奇地它首先显示DogUIViewController的数据,然后在大约1秒钟后切换到正确的数据。另一种奇怪的是,反过来也是如此。
我一直在调查代码,看看可能是什么原因,到目前为止我什么也没找到。就好像纠缠发生在Xcode中没有公开的层中:我查看Connections Inspector,.h
和.m
文件,到目前为止我找不到任何东西。我希望这是我的一个简单的监督,所以我继续挖掘。但是,如果不是,而其他人已经解决了类似的问题,我在这里问。
这是一个真正优美的提问方式。太糟糕了,答案可能对你没有好处。看起来这是一个故事板错误,并且有很多这样的错误。无论如何,很好的阅读。 – 2014-08-27 23:02:40
您可以控制或右键单击Xcode中的右舷并将其显示为“source” - 这将显示底层的XML文档,并可能允许您查看是否存在不应该存在的内容 – Paulw11 2014-08-27 23:27:35
@ Paulw11是否存在某些内容特别我应该寻找?没有什么会跳到我身上。迄今为止所有的ID都是不同的。 – learner 2014-08-27 23:43:46