2013-10-04 2 views
1

은 내가 문자열 변수로 내 infoString을 필요로하는 방법형식 문자열이 아닌 문자 그대로의 경고

[NSAlert alertWithMessageText:string1 defaultButton:@"OK" alternateButton:@"" otherButton:@"" informativeTextWithFormat:infoString] 

에 전화를하고 나는 그것을 사용자가 설정 한 방법입니다. 그러나 "서식 문자열이 문자열 리터럴 (잠재적으로 안전하지 않음)이 아닙니다."라는 경고가 나타납니다.

답변을 찾기 위해 인터넷 검색을 시도했지만, 내 경험에 비하면 아무 것도 발견되지 않았습니다. 나는이 방법이 경고를 제거하는 찾을 수 없습니다

[NSString stringWithString:infoString]; 

[NSString stringWithFormat:@"%@", infoString]; 

: 나는 함께 infoString를 교체했습니다. 모든 제안은 환영 받고 도움이됩니다.

감사합니다.

+0

는 경고 메시지를 받아 들인다. –

답변

2

informativeTextWithFormat은 보안상의 이유로 상수이어야하는 형식 문자열을 필요로합니다. 간단한 수정에 대한

이 변경 :

[NSAlert alertWithMessageText:string1 
       defaultButton:@"OK" 
       alternateButton:@"" 
        otherButton:@"" 
    informativeTextWithFormat:@"%@", infoString]; 
+0

새'@ "% @"'을보기 전에 나는 약 3 번 읽어야했습니다. 그 시점에서 나는 무슨 일이 벌어지고 있는지를 이해했습니다. 애매한 또는 무엇?! –

관련 문제