UILabel
을 로컬로 만들고 subview
으로 추가했습니다. 다음과 같은 문제가 발생합니다. 1) "Analyze"
을 수행하면 컴파일러에 "incorrect decrement of the reference count of the object"
이 표시됩니다. 2) 보유 개수가 0이 아닌 것으로 확인됩니다. 나는 내 콘솔에서 다음을 얻을뷰 객체를 서브 뷰로 추가 한 후 뷰 객체를 해제하는 방법 : 메모리 누수 수정
-(UILabel*)createLabel:(CGRect)rect labelText:(NSString *)labelText {
UILabel *label = [[UILabel alloc] initWithFrame:rect];
label.text = labelText;
return label;
}
- (void)initMyView {
UILabel *label = [self createLabel:rect labelText:circuitName];
NSLog(@"before using %d", [label retainCount]);
[self.heatingCircuitsScrollView addSubview:label];
NSLog(@"before release %d", [label retainCount]);
[label release];
NSLog(@"After release %d", [label retainCount])
}
: 이 내 코드 1
내가 아는
출시 후 릴리스 2 전에 1 을 사용하기 전에를 그 "createlabel"
에 오토 릴리즈를 사용하여 메서드는 문제를 해결합니다. 나는 접근 방식이 가장 좋고을 알고 싶습니다. 그리고 객체를 일단 Subview에 추가하면 그 객체를 해제하는 방법을 알고 싶습니다.
답변 중 하나에 대한 의견이 없습니까? 질문이 있으면 분명히 할 수 있습니다. – ATaylor