UIDatePicker 内存不释放
请教各位大侠,
self.window = [[UIWindow alloc] init];
self.window.frame = CGRectMake(0, 0, self.width, self.height);
self.window.backgroundColor = [UIColor colorWithRed:0/255.0f green:0/255.0f blue:0/255.0f alpha:0.5];
self.window.windowLevel = UIWindowLevelStatusBar;
[self.window makeKeyAndVisible];
UIControl * touchControl = [[UIControl alloc] initWithFrame:CGRectMake(0, 0, self.width,self.height)];
[self.window addSubview:touchControl];
[touchControl addTarget:self
action:@selector(TouchDown)
forControlEvents:UIControlEventTouchDown];
self.datePickerView = [[UIDatePicker alloc] init];
self.datePickerView.center = CGPointMake(160, 220);
self.datePickerView.datePickerMode=UIDatePickerModeDate;
//添加事件
[self.datePickerView addTarget:self action:@selector(datePickerDateChanged:) forControlEvents:UIControlEventValueChanged];
//获得当前时间
NSDate *currentDate = self.datePickerView.date;
NSLog(@"Date = %@",currentDate);
[self.window addSubview:self.datePickerView];
self.birthdayTempStr = [NSString stringWithFormat:@"%@",[[currentDate description] substringToIndex:10]];
NSString *birthday = @"";
FYFriendTime *birthdayUtil = [[FYFriendTime alloc] init];
char *birthdayChar = CoreService::getSharedService()->GetApp().GetAccount().GetBirthday();
NSString *birthdayStr = [NSString stringWithCString:birthdayChar encoding:NSUTF8StringEncoding];
birthday = [birthdayUtil birthdayDate:birthdayStr];
if (birthday.length != 0)
{
NSDateFormatter *dateFomatter = [[NSDateFormatter alloc] init];
[dateFomatter setDateFormat:@"yyyy-MM-dd"];
NSDate *date = [dateFomatter dateFromString:birthday];
[self.datePickerView setDate:date animated:NO];
self.birthdayTempStr = birthday;
}
UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(100, 440, 120, 35)];
[btn setTitle:@"确定" forState:UIControlStateNormal];
[btn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
btn.backgroundColor = [UIColor greenColor];
btn.tag = 1002;
[btn addTarget:self action:@selector(confirmBirthday) forControlEvents:UIControlEventTouchUpInside];
[self.window addSubview:btn];
-(void) datePickerDateChanged:(UIDatePicker *)paramDatePicker{
if ([paramDatePicker isEqual:self.datePickerView]) {
NSDate *currentDate = paramDatePicker.date;
// NSString * todayString = [[currentDate description] substringToIndex:10];
// NSLog(@"Selected date=%@",todayString);
NSDateFormatter *farmatter = [[NSDateFormatter alloc] init];
[farmatter setDateFormat:@"yyyy-MM-dd"];
NSString *str = [farmatter stringFromDate:currentDate];
self.birthdayTempStr = str;
}
}
-(void)TouchDown{
self.datePickerView = nil;
self.window = nil;
}