答案 0 :(得分:2)
答案 1 :(得分:2)
两者都很好。这只是个人偏好。我通常以#2的方式执行,确保将其添加到自动释放池中,这样我们就不会创建内存泄漏:
self.view.backgroundColor = [[[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"Background.png"]] autorelease];
答案 2 :(得分:0)
如果您使用#2,则需要向对象发送“autorelease”消息,将其添加到自动释放池中,否则,您将遇到内存泄漏。
所以
self.view.backgroundColor = [[[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"Background.png"]] autorelease];
记住合同,你分配/ init,你释放或添加到自动释放池。
编辑:正确,另外两个答案提到了苹果所谓的“便利方法”,它创建了一个已经添加到自动释放池中的对象。