表格查看单元格点击已崩溃

时间:2016-07-26 13:31:18

标签: ios uitableview swift2

我已将一个ViewController作为子视图添加到UIWindow&在视图控制器中添加了一个tableView,但是当我点击设备和放大器中的单元应用程序崩溃时细胞在模拟器中消失了Strange Issue !!!

this is the error

    class func addSideMenu(viewControllerName : String)->UIView{
    let storyboard = UIStoryboard(name: MAIN_STORYBOARD, bundle: nil)
    let vc = (storyboard.instantiateViewControllerWithIdentifier(viewControllerName))
    vc.view.frame = CGRectMake(-(UIScreen.mainScreen().bounds.width + 100),0, UIScreen.mainScreen().bounds.width - 100, UIScreen.mainScreen().bounds.height)
    print(vc.view.frame)
    vc.view.tag = 200
    return vc.view
}


 newView = Utilities.addSideMenu("SideMenuViewController")        

UIApplication.sharedApplication().delegate?.window!!.addSubview(newView!)

2 个答案:

答案 0 :(得分:0)

创建视图控制器,查看视图,然后让控制器超出范围是一个坏主意。如果这样做,视图中的任何依赖项(例如表视图委托函数)都可能会崩溃。

只要您使用其视图,就应该保持控制器,或者如果您必须丢弃控制器,请确保它与视图没有连接。

答案 1 :(得分:0)

您的视图控制器应该是UIViewControllerUITableViewController的子类,减少您绕过继承的依赖项并导致不必要的行为。

此外,您的视图控制器应该在初始值设定项中有tableView.delegate = selftableView.dataSource = selfviewDidLoad()这可能是您案例的问题的一部分。