我有两个 ViewController  :  主ViewController 和 DetailViewControlller
ViewController 通过 prepareForSegue 转到 DetailViewControlllerself.performSegueWithIdentifier("detail", sender: tableView)     这里有内存泄露DetailViewControlller 里有一个列表
内容从数据库读到 array , 通过 array.append 添加内容 , 
这里也有内存泄露 swift.array.append我通过这个关闭当前页面
self.dismissViewControllerAnimated(true, completion: nil)请大家给个修改意见,
谢谢

解决方案 »

  1.   

    给你的内存泄露的报错信息呢 ? 
    你是通过以代码的方式进行的转场吧,
    self.performSegueWithIdentifier("detail", sender: tableView)   
    这句代码是在哪个方法中执行的?不要告诉我你放在了prepareForSegue 中
    array 可以在声明时先初始化,得到的数据不可以直接给这个array对象吗,为什么还需要append ? 
      

  2.   

    谢谢先功能都没问题,只是 instruments leaks  有内存泄露func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
            self.performSegueWithIdentifier("detail", sender: tableView)
    }数据是从sqlite 来的,先while 然后 append 到 array
    var result :[TranDetail] = []
    let results = bd.executeQuery(sql, withArgumentsInArray: [transportId])
                while results.next() {
                    trans = TranDetail()
                    trans.id = Int(results.intForColumn("TDID"))
                    result.append(trans)
                }