比如添加UITableViewController的属性tableView
错误原因,属性设为Controller而不是View,Controller保持,View可能被释放
方法1是错的:
方法1:
.h文件
#import
"UITableViewController.h"
@property
(
retain
,
nonatomic
)
UITableViewController
* tableViewController;
.m文件
self
.
tableViewController
= [[
UITableViewController
alloc
]
init];
[
self
.
view
addSubview
:
self
.
tableViewController.tableView
];//
(注:这里出错,tableViewController为属性,不会被释放,反而需要保留的tableViewController.talbeView被释放。)
正确方法:
.h文件
@property
(
retain
,
nonatomic
)
UITableView
* tableView;
.m文件
self
.
tableViewController
= [[
UITableViewController
alloc
]
init];
self.tableView = self.tableViewController.tableView;
[
self
.
view
addSubview
:
self
.
tableViewController.tableView
];//
正确,保存了tableView。