尝试用下面的代码展示一个模态视图控制器 MapViewController *mapView = [[MapViewController alloc] initWithNibName:@"MapViewController" bundle:nil]; mapView.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; [self.navigationController presentModalViewController:mapView animated:YES]; [mapView release]; 继续收到以下错误 'UIViewControllerHierarchyInconsistency', reason: 'A view can only be associated with at most one view controller at a time! View <UIView: 0x1ed815a0; frame = (0 20; 320 460); autoresize = W+H; layer = <CALayer: 0x1ed81600>> is associated with <UIViewController: 0x1ed835a0>. […]
这个问题仍然得到很多upvotes。 所以看看Update3。 一旦你有upvoted,评论,回答,请请请雷达 查看nib / xib,修改该文件,迫使我提交更改或撤消更改。 这是不是一个问题,直到有合并冲突。 细节:我在一个由5名iOS开发人员组成的团队中工作,以及最后几个版本的XCode,当任何人打开文件(不作任何改动)时,遇到.xib / nib文件被触碰/修改的问题。 如果一个开发人员认为“拧紧它,让我检查xcode做的任何修改”并检查它,它不会停在那里。 当另一个开发者查看该笔尖时,两个不同机器上的相同文件(具有相同版本的XCode和MacOS)将再次被触摸/修改。 通常在.xib文件中被修改的是这个 <key>com.apple.ibtool.document.version-history</key> <dict> <key>interface-builder-version</key> <dict> <key>com.apple.InterfaceBuilderKit</key> <string>2844</string> <key>macosx.version</key> <string>12C60</string> </dict> </dict> <key>com.apple.ibtool.document.warnings</key> <dict/> 但除此之外,它还修改或移动.xib文件中现有的键值对。 我在SO和Google上search了很多东西,而且在这个问题上我还没有看到很多post。 当我升级所有的笔尖来处理iPhone5的屏幕时,我曾经遇到过一次合并冲突的噩梦,这本身并不是太复杂,但由于文档版本的原因而导致了大量的合并冲突。 删除代码我不明白,导致xcode崩溃时,我试图打开笔尖。 (我现在已经解决了这个问题,回复到之前的情况) 任何意见如何避免这个问题,表示赞赏! 更新:已经注意到,这还没有解决,而且还经常上升。 我只是好奇,做任何故事板项目遇到同样的问题? (我还没有在故事板上工作过)。 更新2:对于遇到同样问题的所有人,即使您收到有雷达回应的报告,也请提交雷达。 它有助于将问题提升到顶端,而XCode的神只会解决它。 Update3:我在这个主题上仍然看到不less赞扬,苹果bug报告仍然是开放的。 所以,在提出这个问题之后, 请提供一个雷达 ,详细介绍我在问题中提到的细节(和/或添加自己的解释) Update4:这个问题仍然有很多upvotes。 所以看看Update3。 一旦你有upvoted,评论,回答,请请请雷达 Update5:根据WWDC 2014上苹果工程师的信息,这个问题已经在Xcode6中得到修复。 一旦我确认这个问题已经解决,我会更新这个问题(可能会closures它)。 Update6:希望看到这个固定的。 在WWDC2015会问这个问题(通过我认识的人,谁去那里)。 如果其他获得WWDC票的幸运者也可以在WWDC 2015上做同样的事情 更新7:Xcode 7在这里,这个错误也是:(原始的雷达报告(11533872)仍然是开放的
使用xcode中的界面生成器和一个.xib文件,如何在横向和纵向之间旋转时创build替代布局? 请参阅不同布局的图表 Nb 。 绿色视图/区域将包含横向stream动的3个项目和纵向的3个项目将在绿色视图/区域内垂直stream动。
我必须开发一个多屏幕的应用程序。 我已经自动生成xib文件,但对于我的其他屏幕,我需要另一个xib文件。 我如何创build另一个xib文件?
我通过项目导航器点击XIB。 它打开并立即将图标更改为灰色,显示我有未保存的更改。 如果我保存了更改,请单击其他文件,然后单击“重新打开”以进行更多更改。 总是修改打开。 它发生在这个项目中的一个XIB文件和另一个项目中的一对。 我很想知道为什么会发生这种情况,我现在可以做些什么来解决这个问题,并在将来避免它。 注意:使用Xcode 3.2 Build 4C199和Snow Leopard 编辑:我已经添加了一些从这些打开/修改之一从XML中删除的部分 <key>outlets</key> <dict> <key>addEventTabBarController</key> <string>UITabBarController</string> <key>window</key> <string>UIWindow</string> </dict> <key>superclass</key> <string>NSObject</string> 和 <key>outlets</key> <dict> <key>courseTableCell</key> <string>UITableViewCell</string> </dict> <key>superclass</key> <string>UITableViewController</string>
我想创build一个UICollectionViewCell子类与链接一个xib,我有这样做:我已经创build一个新的xib文件,我已经添加一个UICollectionViewCell ,然后我创build了这个子类文件: @interface MyCell : UICollectionViewCell @property (weak, nonatomic) IBOutlet UILabel *label; @end 另外我已经在文件所有者自定义类中MyCell在界面生成器中的MyCell类,我已经添加了一个UILabel ,然后在我的UICollectionView viewDidLoad我这样做: [self.collectionView registerClass:[MyCell class] forCellWithReuseIdentifier:@"MyCell"]; UINib *cellNib = [UINib nibWithNibName:@"MyCell" bundle:nil]; [self.collectionView registerNib:cellNib forCellWithReuseIdentifier:@"MyCell"]; 以及在这个: – (UICollectionViewCell *)collectionView:(UICollectionView *)cv cellForItemAtIndexPath:(NSIndexPath *)indexPath { MyCell *cell = (MyCell*)[cv dequeueReusableCellWithReuseIdentifier:@"MyCell" forIndexPath:indexPath]; cell.label.text = @"Cell Text"; return cell; } 但是这不起作用,我收到这个错误: *** Terminating app due […]
这似乎是这样一个基本的任务,但我很难过。 在Xcode中,如何执行文本search(XML内容)项目中的所有.xib文件? 例如,我们所有的.xib文件都在第二行包含这个string: com.apple.InterfaceBuilder3.CocoaTouch.XIB 。 所以我认为search该string的所有项目文件将返回所有.xib文件,但Xcode坚持“0发生”。 我仔细检查了项目查找选项看起来是正确的。 我必须失去一些明显的东西。 (或Xcode是以某种方式硬编码跳过.xib文件。) 我试图find所有引用特定类的.xib文件(而文本search看起来是最直接的方式)。 谢谢!
我正在使用新的xcode 4.5,我有一些视图控制器上的代码行: DiscoverCell* cell=[table dequeueReusableCellWithIdentifier:@"DiscoverCell"]; if(cell==nil){ NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"DiscoverCell" owner:self options:nil]; cell = [nib objectAtIndex:0]; } 当我运行应用程序其抛出:终止应用程序由于未捕获的exception'NSInternalInconsistencyException',原因:'NIB数据无效。 在LoadNib行上,那是什么? 这个xcode是一些苹果垃圾吗?
我想在故事板中的多个视图控制器中使用视图。 因此,我考虑在外部xib中devise视图,以便在每个视图控制器中反映更改。 但是如何在故事板中加载一个外部xib的视图,甚至有可能? 如果不是这样的话,还有什么其他的select可以适应这种情况呢?
我是iOS新手,想知道哪个是最好的学习。 我已经阅读了一些这里的答案,所以有些人会说使用故事板,别人会说先学习XIB。 学XIB有什么好处吗? XIB更容易理解,并将帮助故事板?