2011-03-28 4 views
115

XML 리소스 문자열에 "/ n"줄을 추가 할 수없는 것처럼 보입니다. 이 일을하는 또 다른 방법이 있습니까?문자열 리소스 새 줄/n을 사용할 수 없습니까?

감사합니다.

+9

뜻은 \ n? 당신은 모범이 있습니까? – Keith

+2

답변을 표시하거나 작동하지 않는 경우 의견을 추가하십시오! – binnyb

+1

\ n이 (가) 있어야합니다. 나를위한 작품 – akash89

답변

273

검은 색 슬래시는 전달 슬래시가 아닙니다. 당신이 HTML로 문자열을 사용하려는 경우에도

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <string name="title">Hello\nWorld!</string> 
</resources> 

이, 당신이 줄 바꿈 (<br />)

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <string name="title">Hello&lt;br /&gt;World!</string> 
</resources> 
+16

html에 대한 '역시 좋은 선택입니다. – bigstones

+1

예, 훨씬 더 읽기가 쉬울 것입니다 – binnyb

+2

strings.xml에서 HTML 형식 만 허용하므로 < br/>이 적절한 해결책입니다 – akash89

39

에 대한 &lt;br /&gt;을 사용할 수 있습니다 "\ n"나는 알고이 꽤 오래된 질문이지만입니다 내가 검색했을 때 목록을 차지했다. 그래서 다른 방법으로 업데이트하고 싶었습니다. strings.xml의 파일에서

당신이 \을 할 수 n 또는 단순히 Enter 키를 누릅니다 수 있습니다

:

<string name="Your string name" > This is your string. 

    This is the second line of your string.\n\n Third line of your string.</string> 

이것은 당신의 텍스트 뷰에서 다음을 발생합니다 이것은 당신의 문자열입니다.

문자열의 두 번째 줄입니다.

문자열의 세 번째 줄.

문자열의 시작 선언과 새 줄 사이에 두 개의 리턴이 있었기 때문입니다. 나는 어느 쪽이든을 사용할 수 있기 때문에 명료하게하기 위해 \ n을 덧붙였다. 필자는 xml에있는 캐리지 리턴을 사용하여 목록이나 내가 가진 여러 줄을 볼 수 있습니다. 내 두 센트.

text = text.Replace("\\\n", "\n"); (text is taken from resX file) 

을 그리고 난 라인 점프를 얻을 : XML 파일의 문자열에 "\ n을"을 넣으면

+3

오, 재미 있습니다. 공유해 주셔서 감사합니다. 또한이 질문에 대한 바보처럼 느껴지지만 많은 사람들을 도왔던 것처럼 보입니다. LOL !! –

+4

이것은 나를 위해 작동하지 않습니다 – Sam

+4

안드로이드에서 입력을 누르는 것 같아요 스튜디오가 작동하지 않습니다 .. – Yeung

1

, 그것은 그래서

을 같이 촬영 "\\ n"은이야, 내가 그랬어 화면에

+2

마법사와 함께 문자열을 추가 할 때만 발생합니다. xml을 편집하면 –

+0

이 실수를 범했습니다. 조언 해 주셔서 감사합니다. 하지만 방금 모든 모습을 수정했습니다. – Kanat

+0

좋은 해결책은 아닙니다. 리소스에서 텍스트를 가져 와서 직접 사용해야합니다. 더 많은 특수 문자를 처리해야한다면 어떻게해야할까요? 그들에게도 더 많은 코드를 쓸 것인가? 가장자리 사건이 있다면? – definera

0

은 매우 간단합니다 그냥 N 당신이 당신의 문자열 리소스에 라인을 파괴하려는 적 \
을 넣어해야합니다.예를 들어

String s = my string resource have \n line break here;

2

이 오래된 질문이지만, 난 당신이 같은 문자열을 만들 때 발견 :

<string name="newline_test">My 
New line test</string> 

앱의 출력은 다음과 같이 될 것입니다 (개행 문자 없음)

My New line test 

문자열을 qu otation 마크

<string name="newline_test">"My 
New line test"</string> 

줄 바꿈이 나타납니다 :이 사람을 도움이

My 
New line test 

희망!

+1

나를 위해 작동하지만, 위와 같은 리소스를 정의 할 때 'Html.fromHtml'을 사용하지 말아야한다는 것을 기억하십시오. 감사 –

0

Android Studio에서 번역 편집기를 사용하는 경우 오른쪽의 아이콘을 클릭하거나 Shift 키를 누른 채로 입력하고 반품을 사용하여 줄 바꿈을 추가하면됩니다. 현지화 된 strings.xml에 \ n을 올바르게 삽입합니다.

관련 문제