Tag: uistoryboard

在另一个项目/包中使用故事板对故事板的引用显示已损坏

现在我有一个里面有两个工程的工作空间,一个是“ProjectOne”,另一个是“ProjectTwo”,如下图所示: 他们分别有一个故事板,现在我想通过按“To Project Two”连接两个故事板,如下所示: 但是当我点击button,它显示 “终止应用程序,由于未捕获的exception'NSInvalidArgumentException',>原因:'无法find一个名为'two'的捆绑包NSBundle 8C6A5FDC9E06 / ProjectOne.app>(加载)'” 有没有可能做到这一点? 我寻求几天的方法,但也不知道…

awakeFromNib,网点和故事板:是文件错误?

根据NSObjectUIKit Additions Reference ,outletvariables应该在awakeFromNib被调用的时候设置(强调全部是我的): nib加载基础结构将一个awakeFromNib消息发送到从nib存档重新创build的每个对象,但仅在存档中的所有对象都已加载并初始化之后。 当一个对象收到一个awakeFromNib消息时,保证所有的出口和动作连接已经build立。 … 重要说明:由于无法保证从存档中实例化对象的顺序,因此您的初始化方法不应将消息发送到层次结构中的其他对象。 到其他对象的消息可以从awakeFromNib方法中安全地发送。 通常情况下,您需要为需要额外设置的对象实现awakeFromNib,而这在devise时是无法完成的。 例如,您可以使用此方法自定义任何控件的默认configuration,以匹配用户首选项或其他控件中的值。 您也可以使用它将个别控件恢复到应用程序的某个以前的状态。 但是,这不符合我的testing,至less使用故事板。 下面的testing结果似乎与文档相矛盾: 在Xcode中创build一个新的单一视图应用程序。 将第二个ViewController拖到故事板上。 给第一个ViewController一个button,并从显示第二个ViewController的button创build一个模式的segue。 为第二个ViewController创build一个ViewController类文件。 在故事板上的第二个ViewController上创build一个标签,并从它创build一个名为someLabel的出口到相应的ViewController类。 将下面的awakeFromNib实现添加到第二个ViewController中: 。 – (void) awakeFromNib { [super awakeFromNib]; if (self.someLabel == nil) { NSLog(@"someLabel property is nil"); } else { NSLog(@"someLabel property is not nil"); } if (_someLabel == nil) { NSLog(@"_someLabel is nil"); } else […]

用prepareForSegue Swift传递对象

我正在尝试通过prepareForSegue()将对象传递给另一个场景 override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { // Get the new view controller using [segue destinationViewController]. var nextScene = segue.destinationViewController as! VehicleDetailsTableViewController // Pass the selected object to the new view controller. if let indexPath = self.tableView.indexPathForSelectedRow() { let selectedVehicle = vehicles[indexPath.row] nextScene.currentVehicle = selectedVehicle } } 我有currentVehicle对象来捕捉这些对象。 但是,当我尝试运行时,它会导致向下转换错误。 错误编辑 无法将types“XXX.DisplayViewController”(0x1082dcd80)的值转换为“XXX.VehicleDetailsTableViewController”(0x1082dc9a0)。 (LLDB)

重新加载故事板来改变语言环境

我正在为我的应用程序使用一个本地化的Storyboard。 该应用程序必须有一个选项,即时改变语言。 到目前为止,我已经想出了如何更改应用程序启动期间使用的语言: [[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:@"de", @"en", @"fr", nil] forKey:@"AppleLanguages"]; [[NSUserDefaults standardUserDefaults] synchronize]; //to make the change immediate 并设法通过删除关键窗口的所有子视图重新加载我的整个应用程序,从故事板重新加载初始视图控制器,并使其成为新的根视图控制器。 (它有一些问题,比如pipe理开放资源,但可以完成。) 我唯一无法弄清楚的是如何强制iOS用新语言重新加载故事板? 看起来故事板是以某种方式caching的,并且-UIStoryboad:stroyboardWithName:fromNib不会完全重新加载它,所以它出现在最后一种语言中。 我已经考虑了另外两个select: 有不同的故事板文件为每种语言(这是不可pipe理的,我不想这样做) 在我的所有视图控制器中使用事件侦听器来响应语言变化,并在UI上设置新的string(每次从故事板实例化时都必须调用这些string)。 这个解决scheme需要更多的时间,比我们想要花费的时间更多,同时也极大地增加了错误的可能性。 有没有更聪明的方法? 我不想保持我的应用程序的当前状态,所以重新启动它,就像它被杀死和实现似乎是一个合理的解决scheme。

故事板 – 设置代表

在故事板之前,我可以通过将插口拖到一个类来设置代表和数据源。 通过故事板,我不能将sockets拖到另一个视图控制器; 没有目的地可以回应。 如果我点击一个视图控制器对象,我可以在底部看到类的所有者,但只要我select包含sockets的其他视图控制器,旧的select不见了,所以我不能连接这两个。 这是苹果的方式说我们应该只有编程连接他们?

除非应用程序需要全屏,否则必须提供启动故事板或xib

我不使用storyboard / xib作为启动屏幕,并在Xcode7 +中获取这些错误。 – All interface orientations must be supported unless the app requires full screen. – A launch storyboard or xib must be provided unless the app requires full screen.

在视图控制器之间传递数据:从uitableview到详细信息视图控制器

我正在使用IOS 5和故事板编码。 我已经build立了一个应用程序,我有一个tableView连接到一个search栏的SQLite数据库。 当我们触摸一行时,它会自动将我们带到另一个名为“Details”的视图控制器。 我需要将数据从我的表视图传递给详细信息视图控制器,例如将author.title传递给labelText.text字段。 有任何想法吗? 编辑的问题: – (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{ // NSString *Title; Details *dv = (Details*)segue.destinationViewController; author.title = dv.labelText.text; } 部分代码: // // Details.m // AuthorsApp // // Created by georges ouyoun on 7/17/12. // Copyright (c) 2012 __MyCompanyName__. All rights reserved. // #import "Details.h" #import "Author.h" @interface Details () @end @implementation Details […]

无法在捆绑中加载NIB:使用故事板时的NSBundle

我在使用我的应用程序一段时间时出现以下错误。 通常需要50到100次运动才能造成坠机。 我没有意识到,虽然因为我正在使用故事板,这是一个NIB错误。 Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle </Users/me/Library/Application Support/iPhone Simulator/5.0/Applications/GUID/appname.app> (loaded)' with name 'MainStoryboard_iPhone.storyboardc/q8p-MH-tsT-view-acD-hJ-g0C'' 我不是100%确定从哪里开始寻找,但我认为这意味着故事板是腐败的? 我查看了所有的源代码,而且我没有string“nib”,所以没有nibWithNibName调用等等。 我也没有一个MainWindow.xib,虽然我试图创build一个。 我不确定当我使用故事板时是否可以设置为主界面。 在.xcodeproj / project.pbxproj文件中有一个对.nib的引用,但是: /* Begin PBXBuildRule section */ 148BDD4C14AE8D5E002C30ED /* PBXBuildRule */ = { isa = PBXBuildRule; compilerSpec = com.apple.compilers.proxy.script; fileType = wrapper.nib; isEditable = 1; […]

使用iOS 5上的Segues / Storyboardpopup当前视图

我正在使用iOS 5 SDK创build应用程序。 我设法使用Storyboard的Segues来推送视图,但我找不到正确的方式来popup当前视图并返回到前一个视图。 我没有使用任何导航控制器(应用程序没有任何顶部或底部酒吧)。 我不认为使用模式或推继续其他方式将是解决scheme,因为它实例化一个新的控制器。 我是否必须使用与之相反的animation并在最后删除视图的自定义Segue? 或者,还有更好的方法 ?

故事板导航控制器和标签栏控制器

我正在尝试在Storyboard中获得以下设置。 在开始的时候我有一个表格视图,而当我点击一个单元格时,它需要转换到标签栏控制器,它可以工作。 但是现在我想在两个最右边的控制器中有一个标题和一个额外的导航栏button。 但我似乎无法将button拖到那里,或者在设置标题时,什么也没有显示出来。 我怎样才能在故事板中实现这个设置? 编辑: 根据下面的答案更新了问题。 当我有这个新的设置(因此有一个额外的导航控制器之间),我可以在故事板中设置标题,但是在运行应用程序时,添加的标题不显示。 编辑:我已经上传了一个Xcode项目完全相同的设置。 也许它可以派上用场。