\ n 또는 줄 바꿈이있는 NSString


100

누구든지 NSString에서 줄 바꿈을 사용하는 방법을 알고 있습니까? 이런 식으로해야합니다.

[NSString stringWithFormat:@"%@,\n%@", mystring1,mystring2];

11
이거 실제로 해봤 어? 그랬다면 답을 얻었을 것이기 때문입니다.
Dave DeLong

아니, 작동하지 않았습니다. 문자열에 \ n이 추가되어 있지만 렌더링 할 때 같은 줄에 있습니다.
Dave

4
HTML 지원을 사용하지 않고 표시하는이 NSString 유형 메시지를 확인하십시오. HTML 지원을 사용하는 경우 \ n을 처리하지 않습니다. 내가 도움이되기를 바랍니다. 감사합니다, Aby
Abdul Yasin

답변:


177

NSObject의 하위 클래스에 대한 설명을 오버로드 할 때 동일한 문제가 발생했습니다. 이 상황에서 줄 바꿈을 만들기 위해 줄 바꿈 (\ n) 대신 캐리지 리턴 (\ r)을 사용할 수있었습니다.

[NSString stringWithFormat:@"%@\r%@", mystring1,mystring2];


1
완전한! 그냥 첫 번째 % 후 취소 필요한 쉼표를 가지고 있습니다 @
샘 스펜서

1
@OMGPOP, iOS 개발의 경우 아래 내 답변도 확인해야합니다.
앤디

이걸 공유 해주셔서 감사합니다.
swiftBoy

32

문자열이 UIView (예 : UILabel)에 들어가면 줄 수를 0으로 설정해야합니다.

myView.numberOfLines=0;

26

나는이에서 문자열 읽을 때 발견 .plist파일을의 발생이 "\n"같이 분석했다 "\\n". 나를 위해 솔루션의 발생 대체하는 것이었다 "\\n"과를 "\n". 예를 들어, 내 파일 에서 read in NSString이라는 이름 의 인스턴스가 주어지면 다음 을 호출해야합니다.myString.plist

myString = [myString stringByReplacingOccurrencesOfString:@"\\n" withString:@"\n"];

... 내 UILabel인스턴스에 할당하기 전에 ...

myLabel.text = myString;

2
이것이 바로 제 시나리오였습니다, Adil. 답변 해 주셔서 감사합니다!
iOS4Life 2016 년

12
NSString *str1 = @"Share Role Play Photo via Facebook, or Twitter for free coins per photo.";
NSString *str2 = @"Like Role Play on facebook for 50 free coins.";
NSString *str3 = @"Check out 'What's Hot' on other ways to receive free coins";


NSString *msg = [NSString stringWithFormat:@"%@\n%@\n%@", str1, str2, str3];

8

이것을 시도하십시오 (stringWithFormat은 소문자로 시작해야 함)

 [NSString stringWithFormat:@"%@\n%@",string1,string2];

2

\ n \ r 나를 위해 일하는 것 같습니다.

IOS 6.0을 대상으로 Xcode 4.6을 사용하고 있습니다. iPhone 4S에서 테스트되었습니다. 혼자서 시도하십시오.

펭 치우


1
이것은 답이 아닙니다. 의견에 적어주세요.
Shivaay

2

NSString의 줄 바꿈 문자는 \ r입니다.

올바른 사용 방법 [NSString StringWithFormat:@"%@\r%@",string1,string2];

\ r ----> 캐리지 리턴


"StringWithFormat"이 잘못되었습니다. "stringWithFormat"이어야합니다 (소문자 's'로 시작해야 함)
SpokaneDude

0

\n줄을 끊는 데 선호되는 방법입니다. \r너무 작동합니다. \n\r또는 \r\n과잉이며 나중에 문제를 일으킬 수 있습니다. 코코아, 특정 단락 및 특정의 용도에 줄 바꿈 문자가 NSParagraphSeparatorCharacter, NSLineSeparatorCharacter. 다음은 위의 모든 내 소스입니다.


0

Swift 3에서는 훨씬 간단합니다.

let stringA = "Terms and Conditions"
let stringB = "Please read the instructions"

yourlabel.text =  "\(stringA)\n\(stringB)"

또는 textView를 사용하는 경우

yourtextView.text =  "\(stringA)\n\(stringB)"

게시물은 Objective-C에 대해 특별히 레이블이 지정되어 있습니다.
dylan dec

0

\ n 또는 \ r이 작동하지 않고 uiwebview로 작업하고 <br> 태그를 사용하여 html을로드하여 새 줄을 삽입하려는 경우. NSString stringWithFormat에서 <br> 태그를 사용하지 마십시오.

대신 추가하여 동일하게 사용하십시오. 즉, stringByAppendingString을 사용하여

 yourNSString = [yourNSString stringByAppendingString:@"<br>"];
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.