注册 登录
主题 : 利用storyboard跳转到xib到问题
级别: 新手上路
状态: 未签到 - [20天]
UID: 83540
精华: 0
发帖: 19
可可豆: 181 CB
威望: 122 点
在线时间: 45(时)
注册时间: 2011-07-26
最后登录: 2015-03-25
楼主 : 发表于: 2014-11-19 10:47    发自: Web Page
来源于 一般提问 分类

利用storyboard跳转到xib到问题   

创建了一个SingleView到工程,在Storyboard上面放了一个button,想利用button跳转到一个xib
然后,在工程中添加了一个ViewController(自动创建xib,名称是XIBVIewController),在xib文件中放了一个button,返回用的
Storyboard上带button实现如下
let xibView = UIViewController(nibName: "XIBViewController", bundle: nil)
presentViewController(xibView, animated: true, completion: nil)

xib中带button实现如下
self.dismissViewControllerAnimated(true, completion: nil)

在appdelegate的 application(:didFinishLaunchingWithOptions)的方法中添加了如下代码
let mainStoryboard = UIStoryboard(name: "Main", bundle: nil)
window = UIWindow(frame: UIScreen.mainScreen().bounds)
window?.rootViewController = mainStoryboard.instantiateInitialViewController() as? UIViewController

经测试,在未修改appdelegate的代码前后,都能成功跳转到xib。但是xib无法返回,而且xib中到button事件没有执行就报错。
报错信息如下:
2014-11-19 10:32:40.486 IOS Develop Guide[11103:903095] -[UIViewController returnForm:]: unrecognized selector sent to instance 0x7faab0450520
2014-11-19 10:32:40.489 IOS Develop Guide[11103:903095] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIViewController returnForm:]: unrecognized selector sent to instance 0x7faab0450520'
*** First throw call stack:
(
    0   CoreFoundation                      0x00000001098d2f35 __exceptionPreprocess + 165
    1   libobjc.A.dylib                     0x000000010b416bb7 objc_exception_throw + 45
    2   CoreFoundation                      0x00000001098da04d -[NSObject(NSObject) doesNotRecognizeSelector:] + 205
    3   CoreFoundation                      0x000000010983227c ___forwarding___ + 988
    4   CoreFoundation                      0x0000000109831e18 _CF_forwarding_prep_0 + 120
    5   UIKit                               0x000000010a15f8be -[UIApplication sendAction:to:from:forEvent:] + 75
    6   UIKit                               0x000000010a266410 -[UIControl _sendActionsForEvents:withEvent:] + 467
    7   UIKit                               0x000000010a2657df -[UIControl touchesEnded:withEvent:] + 522
    8   UIKit                               0x000000010a1a5308 -[UIWindow _sendTouchesForEvent:] + 735
    9   UIKit                               0x000000010a1a5c33 -[UIWindow sendEvent:] + 683
    10  UIKit                               0x000000010a1729b1 -[UIApplication sendEvent:] + 246
    11  UIKit                               0x000000010a17fa7d _UIApplicationHandleEventFromQueueEvent + 17370
    12  UIKit                               0x000000010a15b103 _UIApplicationHandleEventQueue + 1961
    13  CoreFoundation                      0x0000000109808551 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
    14  CoreFoundation                      0x00000001097fe41d __CFRunLoopDoSources0 + 269
    15  CoreFoundation                      0x00000001097fda54 __CFRunLoopRun + 868
    16  CoreFoundation                      0x00000001097fd486 CFRunLoopRunSpecific + 470
    17  GraphicsServices                    0x000000010d9dc9f0 GSEventRunModal + 161
    18  UIKit                               0x000000010a15e420 UIApplicationMain + 1282
    19  IOS Develop Guide                   0x000000010932a8ae top_level_code + 78
    20  IOS Develop Guide                   0x000000010932a8ea main + 42
    21  libdyld.dylib                       0x000000010bbf0145 start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb)

求解!
有试过,在xib到button中不添加任何代码,依然报错,只有删除button到connection,才不会报错,但是没有事件。

级别: 新手上路
UID: 387315
精华: 0
发帖: 20
可可豆: 20 CB
威望: 20 点
在线时间: 19(时)
注册时间: 2014-10-16
最后登录: 2015-09-21
沙发 : 发表于: 2015-08-04 19:25    发自: Web Page
应该是实例化xib的viewcontroller的类 而不是以加载xib的方式实例vc 有问题直接发我群里 426981364 iOS有问必答群
级别: 新手上路
UID: 552701
精华: 0
发帖: 2
可可豆: 2 CB
威望: 2 点
在线时间: 22(时)
注册时间: 2016-03-24
最后登录: 2016-12-16
板凳 : 发表于: 2016-03-24 11:38    发自: Web Page
XIBVIewController  *xibViewController = [[XIBVIewController alloc] init];
self prensentViewController: xibViewController ...
级别: 新手上路
UID: 351162
精华: 0
发帖: 35
可可豆: 45 CB
威望: 35 点
在线时间: 232(时)
注册时间: 2014-07-27
最后登录: 2017-04-27
3 楼:  发表于: 2016-05-01 05:33    发自: Web Page
请参考 http://blog.zlcode.com/2016/05/01/storyboard-viewcontroller-value/
一切随缘
描述
快速回复

关注本帖(如果有新回复会站内信通知您)

验证问题:
苹果公司现任CEO是谁?2字 正确答案:库克

发帖、回帖都会得到可观的积分奖励。查看论坛积分规则

按"Ctrl+Enter"直接提交
    顶部