我在这个行中的对象UIDeviceRGBColor的仪器中出现内存泄漏:
[[self navigationController] navigationBar].tintColor = [UIColor colorWithRed:90.0/255.0 green:48.0/255.0 blue:48.0/255.0 alpha:1.0];
有任何建议如何解决?
由于
答案 0 :(得分:2)
也许这个对象被UIKit缓存了?
如果你循环运行1000次命令,你会得到1次泄漏还是1000次?
编辑:请参阅IOS 4.3 UINavigationBar tintColor Leaks。我的上述问题仍然存在,那么
答案 1 :(得分:1)
也许尝试像这样创建一个UIColor实例
UIColor *color = [[UIColor alloc] initWithRed:90.0/255.0 green:48.0/255.0 blue:48.0/255.0 alpha:1.0];
然后设置导航栏色调颜色
self.navigationController.navigationBar.tintColor = color;
然后释放颜色对象
[color release];
如果物体仍在泄漏,则检查仪器后。
答案 2 :(得分:1)
colorWithRed:green:blue:alpha:
生成自动发布的UIColor
。那应该不是内存泄漏。我假设属性setter也正确合成,因为它是Apple类。所以我没有看到泄漏。
答案 3 :(得分:0)
您的代码中没有泄漏。如果有任何泄漏,那将是Apple的代码(除了提交错误之外你不能做任何事情),但是仪器报告误报的可能性更大。
答案 4 :(得分:-2)
我会设置你的色彩颜色:
[self.navigationController.navigationBar setTintColor:[UIColor colorWithRed:90.0/255.0 green:48.0/255.0 blue:48.0/255.0 alpha:1.0]];