ios - instantiateViewControllerWithIdentifier方法构造后控件均为nil
巴扎黑
巴扎黑 2017-04-18 09:13:42
[iOS讨论组]
  1. 使用instantiateViewControllerWithIdentifier方法构造ViewController,控件均为nil,下面这段代码是此视图一个控件的点击执行的闭包, StoryBoard获取到是正常的

  2. 另问这个界面就是一个EquipmentDetailViewController,我希望点击控件后进入另外一个相同的EquipmentDetailViewController并赋予不同的数据,有没有办法在StoryBoard中构建到自身的Segue

let storyBoard = UIStoryboard(name: "Equipment", bundle: NSBundle.mainBundle())
let equipmentDetailVC = storyBoard.instantiateViewControllerWithIdentifier("EquipmentDetailViewControllerID") as! EquipmentDetailViewController
equipmentDetailVC.setContent(CSVDataManager.sharedInstance.getEquipmentInfoByID(index)!)
equipmentDetailVC.navigationItem.rightBarButtonItem = UIBarButtonItem(title: "返回全部装备", style: .Plain, target: self, action: #selector(EquipmentDetailViewController.popToRoot))
self.navigationController?.pushViewController(equipmentDetailVC, animated: true)
巴扎黑
巴扎黑

全部回复(2)
巴扎黑

Equipment.storyboard存在不,EquipmentDetailViewControllerID设了没有

黄舟

你遇到的 instantiateViewControllerWithIdentifier 返回结果是 nil 的问题,没有具体的代码,不知道问题在哪里,一般来说如果 storyboard 是对的, storyboard 里 EquipmentDetailViewController 也设置了正确的 id,而且它本身的 class 也是 EquipmentDetailViewController 的话,应该就不会遇到这样的问题。

“我希望点击控件后进入另外一个相同的EquipmentDetailViewController并赋予不同的数据”
上面这个需求比较奇怪,如果是要进入到一个相同的 view controller 而只是数据不一样,这种情况为什么要进到一个新的 controller 里呢?还在同一个 controller 里,数据模型变化了,更新 view 就可以了。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号