XML에서 문자열 이름에 공백 문자를 넣는 방법은 무엇입니까?


174

strings.xml파일에 일부 문자열을 정의했습니다 . 이제 문자열의 숫자 사이에 여분의 공간을 두어야합니다. 여분의 공백 문자를 입력하면 응용 프로그램에 표시되지 않습니다.

전에:

<string name="spelatonertext3">-4, 5, -5, 6, -6,

그리고 이렇게 여분의 공간을두면

<string name="spelatonertext3">-4,  5, -5,   6,  -6,

앱에서 동일하게 보입니다. 공백 문자를 XML 문자열로 만들려면 어떻게해야합니까?


글쎄, 그것은이 페이지에서도 동일하게 보였습니다 ... :) 것은 숫자 사이에 공백이 필요합니다. 어떻게 가능합니까 ..?
Andreas

<>SO 에서 공백 (& 내용) 을 유지하려면 코드 형식을 사용하십시오 . :)
Andrew Thompson

답변:


405

xml에서 공백을 문자열 사용으로 사용 &#160;합니다. XML은 그대로 공백을 사용하지 않습니다. 공백을 설정하기 전에 잘라냅니다. 따라서 &#160;단일 공백 ​​대신 사용하십시오.


1
텍스트 끝에 공백이 있으면 textview의 wrap_content에서 작동하지 않습니다. textview는 'space'문자가 차지하는 너비를 유지하지 않습니다.
toobsco42

28
이것은 깨지지 않는 공간을 추가합니다. 일반 공간과 다르며 특정 기능 ( normalize-space예 : XPath)에서는 제대로 작동하지 않습니다 . &#032;대신 (일반 공간)을 사용해보십시오 &#160;. @ toobsco42
shwartz

전화 번호에서 지역 번호 다음에 비 공백 공간을 배치하는 &#160;대신 사용해야 했습니다 \u0020. 그렇지 않으면, 지역 번호의 후행 괄호 뒤에 줄 끝에서 전화 번호가 줄 바꿈되었습니다.
mharper

& # 032; 1 개의 공간이 필요하면 괜찮습니다. 여러 항목 (& # 032; & # 032; ...)을 넣으면 1로 잘립니다. 일반 공백과 같은 동작이므로 쓸모없는 것 같습니다. 발견 된 경우 & # 009; (탭 문자로 가정) : 아무것도 표시하지 않습니다. & # 160; 잘 작동, 그것은 내가 필요한 것입니다 덕분에 ρяσѕρєя K.
herve-guerin

57

보존하려는 공백에 대해 \ u0020을 XML에 직접 삽입하십시오.

<string name="spelatonertext3">-4, \u00205, \u0020\u0020-5, \u00206, \u0020-6,</string>

24

Android는 String.xml 파일에서 문자열 끝에 공백을 유지하는 것을 지원하지 않으므로 문자열 뒤에 공백을 원하면 단어 사이 에이 유니 코드를 사용해야합니다.

\ u0020

유니 코드 공백 문자입니다.


이것은 Android 4.4로 컴파일 된 Android Studio 3.6.2를 사용하여 나를 위해 일했습니다. 감사.
사랑과 평화-Joe Codeswell

11

이미 언급했듯이 XML 파일에 공백을 두는 올바른 방법은 공백에 대한 \u0020유니 코드 문자를 사용하는 것입니다.

예:

<string name="spelatonertext3">-4,\u00205,\u0020-5,\u00206,\u0020-6</string>

다른 제안 사용할 말했다 &#160;또는 &#032;하지만이 단점이 거기에있다. 첫 번째 단점은 ASCII 문자이므로 TextView와 같은 것을 사용하여 구문 분석하는 것입니다. 두 번째 단점은 &#160;때때로 TextViews에서 이상한 줄 바꿈이 발생할 수 있다는 것 입니다.


7

우주 변형 :

<string name="space_demo">|&#x20;|&#x2009;|&#x200A;|</string>

| 스페이스 | 얇은 공간 | 헤어 스페이스 |


1
이것은 가장 달콤하고 굉장한 것입니다
Abdul Waheed

6

이것은 잘 작동합니다. 따옴표를 사용하여 공간 유지

<string name="spelatonertext3">"-4,  5, -5,   6,  -6,"</string>

1
이것은 내 의견으로는 가장 깨끗하고 읽기 쉬운 대답입니다. 불행히도 대부분의 사람들은 아마도 계속 진행하기 전에 답변 목록 아래로 내려 가지 않을 것입니다.
DavidR

5

&#160;안드로이드 프로젝트에서 단일 공간을 나타 내기 위해 string.xml 파일에 넣 습니다.


5

다음을 사용할 수도 있습니다

<string name="spelatonertext3"> "-4,  5, -5,   6,  -6, "> </string>

" "공간이 있는 (따옴표)에 무엇이든 넣으십시오.


1
공간이있는 ""(따옴표)에 아무 것도 넣으십시오. 작동하지 않습니다.이 작동하지 않습니다
Krunal Shah

3

귀하의 질문에 따라 문자열 리소스에 공백을 두 개 이상 추가하려면 문자 또는 단어 사이에 공백을 추가하는 많은 옵션이 있습니다.

1. 기본적으로 하나의 공간으로 문자열 리소스 파일에 직접 추가 할 수 있습니다. 그러나 문자열 리소스 파일에 둘 이상의 공간을 제공하면 해당 공간을 제외합니다. 예. -4, 5, -5, 6, -6,

  1. 문자열 리소스 파일 내에 추가 공간을 추가하려면 다음을 사용하십시오. 같은 문자 뒤에 유니 코드 추가

        <string name="test">-4,&#160;&#160;5,&#160;&#160;-5,&#160;&#160;6,&#160;&#160;-6,</string>

ii. "\ u0020"을 사용할 수 있습니다

<string name="test">-4,\u0020\u0020 5,\u0020\u00205 -5,\u0020\u00205 6,\u0020\u00205 -6,</string>

3

2 문자열 사이 또는 안드로이드의 문자열 파일 사이에 공간을 주려고하면 문자열 파일 에서이 작업을 수행하십시오. 표시하고자하는 "문자열 이름"앞에이를 구현하십시오. \ u0020 \ u0020 예 : \ u0020 \ u0020 \ u0020 \ u0020 \ u0020 \ u0020 지불


2

xml : space = "preserve"

매력처럼 작동합니다.

편집 : 잘못되었습니다. 실제로 내용이 공백으로 만 구성된 경우에만 작동합니다.

링크


1

출력이 HTML 인 경우 HTML에서 여러 공백이 단일 공백으로 표시됩니다. 이를 방지하려면 일반 공간 대신 ​​비 분리 공백 (xA0)을 사용하십시오.


1

문자열 중간에 여러 공백을 얻을 수있는 유일한 방법입니다.

<string name="some_string">Before" &#x20; &#x20; &#x20;"After</string>

Before   After

0

"-4, 5, -5, 6, -6"(두 공백)과 같이 표시하려면 string.xml에 다음 코드를 추가 할 수 있습니다.

<string name="spelatonertext3"> "-4,&#160;&#160;5,&#160;-5,&#160;&#160;6,&#160;&#160;-6,"</string>

  한 칸 표시됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.