在更新到iOS8.3之后,我开始收到一堆在iOS8.2上没有的新警告。一个特别吸引我眼球的;
@property (strong, nonatomic) IBOutlet UITableView *tableView;它在“.m”文件中声明。
在iOS8.3中有什么改变使其成为警告呢?
Auto property synthesis will not synthesize property 'tableView'; it will be implemented by its superclass, use @dynamic to acknowledge intention发布于 2015-04-15 17:03:17
如果您使用的是UITableViewController,那么tableView已经被合成了。(即)self.tableView是UITableViewController的tableView )。
发布于 2015-04-16 07:11:37
我也面临着类似的问题。我用以下方法解决了这个问题。在.m文件中,在@implementation下写入@dynamic tableView
我希望你的问题能得到解决。
发布于 2015-04-15 17:03:58
什么改变了?编译器变得更聪明了。
您可能是在子类UITableViewController。
UITableViewController已经有了一个名为tableView的属性。它已经在UITableViewController中合成或实现了。因此,警告告诉您,您不是要获得自己的tableView属性,而是要获得由UITableViewController提供的属性。
显然,如果您不知道tableView在UITableViewController,如果您错误地认为这是您的财产,在您的控制下,就会有麻烦。所以你才会收到警告。因此,如果这就是您要做的,那么您的代码总是被严重破坏,需要修复。
但是,如果代码中只有@property声明,但您知道它实际上是UITableViewController属性,则不会造成任何损害,但请删除@属性,因为它是错误的。
https://stackoverflow.com/questions/29656294
复制相似问题