Вы должны добавить экземпляр подкласса UITableViewController
в качестве дочернего контроллера представления другого контроллера представления. Вы должны обеспечить несколько очков, чтобы заставить его работать. Точки перечислены ниже:
TableViewController
viewDidLaod
, так как они должны быть выполнены только один раз) TableViewController
, чтобы настроить его рамку просмотра после того, как родительский контроллер представления заложил свои подпредставления. Код здесь:
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let vc = TableViewController()
addChildViewController(vc)
view.addSubview(vc.view)
vc.didMove(toParentViewController: self)
childVC = vc
}
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
childVC?.view.frame = view.frame
}
Который является определением переменной, которая содержит изображение в Вас ClassX??? Проблема может быть в том, что Вы создаете новый ClassX, и старый является не быть удаленным GC, заставляющим голову иметь два других экземпляра ClassX.
Так как Вы используете код unmanged (CreateBitmapSourceFromHBitmap), необходимо проверить, называют ли весь завершить метод правильно (хотя близко или располагают, вероятно), и что никаких статических ссылок, которые могут указывать ClassX.
Помните, что, если Вы ClassX не удалены, Растровый экземпляр будет достижим в графике, сделанном GC, делающим его для не удаления его из "кучи".
Я, которого recommned, использующие perfmon и, добавляют объект памяти .NET видеть, существует ли какой-либо объект, который выжил, завершаю или закрепленный объект, это - тот, который Вам, вероятно, интересно относительно утечки памяти.
Я надеюсь, что это помогает :P, но будет более хорошо при помещении кода ClassX.