我的 UIDatePicker 似乎有漏洞。我注意到设置 datePickerMode 以显示日期和时间的内存泄漏。但是,我只是想显示日期。我相当确定这是一个框架泄漏,因为当我注释掉几个 UIDatePicker 属性分配时,泄漏就消失了。此代码泄漏了 1 个 CGColor 对象和 1 个 UIDeviceRGBColor 对象:
datePicker = [[UIDatePicker alloc] initWithFrame:[self detailViewRect]];
datePicker.datePickerMode = UIDatePickerModeDate; //leaks CGColor when setting this
datePicker.hidden = NO;
datePicker.timeZone = [NSTimeZone systemTimeZone]; //leaks UIDeviceRGBColor
datePicker.maximumDate = [NSDate date];//leaks UIDeviceRGBColor
datePicker.autoresizingMask = UIViewAutoresizingFlexibleWidth;
通过评论 Instruments 报告为冒犯的行,我没有泄漏:
datePicker = [[UIDatePicker alloc] initWithFrame:[self detailViewRect]];
//datePicker.datePickerMode = UIDatePickerModeDate; //leaks CGColor when setting this
datePicker.hidden = NO;
//datePicker.timeZone = [NSTimeZone systemTimeZone]; //leaks UIDeviceRGBColor
//datePicker.maximumDate = [NSDate date];//leaks UIDeviceRGBColor
datePicker.autoresizingMask = UIViewAutoresizingFlexibleWidth;
没有设置至少日期模式,UIDatePicker 毫无值(value)。有人有解决方法吗?
最佳答案
这种方法对我有用:
在 xib 中创建 DatePicker 而不是编程方法。然后,在属性检查器上,将模式设置为日期。
关于ios - UIDatePicker 泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12830278/