0

AlertView에 텍스트 필드를 표시하는 간단한 방법이 있습니다. 이것으로 메모리 누수를 나타내는 인스 트 르먼트. 설명 해주십시오.iOS ARC UIAlertView 누출 메모리

- (void)method { 
NSString *value = [[NSUserDefaults standardUserDefaults] valueForKey:@"key"]; 
if (value == nil) { 

    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Title" message:@"message" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil]; 

    alertView.tag = 101; 
    alertView.alertViewStyle = UIAlertViewStylePlainTextInput; 
    UITextField *txtGroup = [alertView textFieldAtIndex:0]; 
    [txtGroup becomeFirstResponder]; 

    [alertView show]; 
    alertView = nil; 
} 
} 

악기의 스크린 샷을 찾아주세요 : enter image description here

+0

를? 보여준 후에? –

+0

어딘가에서 읽은 객체를 해제하려면 사용 후 nil로 설정해야합니다. – PK86

+0

여기에서 http://blog.harbinger-systems.com/2014/04/ios-memory-management-and-arc/ – PK86

답변

0

당신은으로 alertView을 작성해야합니다 : 당신이 alertView = 전무하고 있습니다 왜

static UIAlertView *alertView = nil; 

if (!alertView){ 
    alertView = [[UIAlertView alloc] initWithTitle:@"Title" message:@"message" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil]; 
} 
+0

UIAlertView를 정적으로 사용해야하는 이유는 무엇입니까? – PK86

+0

이 메서드를 호출하면 alertview가 새 인스턴스를 생성하므로 매우 유용합니다. – KKRocks

+0

정적 대신 전역 alertiview를 선언 할 수 있습니다. – KKRocks