developer tip

XML 형식의 줄 바꿈?

copycodes 2020. 11. 7. 10:16
반응형

XML 형식의 줄 바꿈?


XML에서 문자열을 편집 할 때 줄 바꿈을 추가해야합니다. 안드로이드 용으로 프로그래밍 할 때 올바른 형식이 무엇인지 묻고 싶었습니다. <br>작동 하기 때문에 ECLIPSE는 영역을 문제로 표시합니다. 내가 제안을 확인하면 Eclipse가 종료 태그를 추가한다고 알려줍니다 </br>-줄 바꿈이 사라진다고 추가하면 ...

그래서 하나는 작동하지만 문제가있는 것으로 표시되고 다른 하나는 작동하지 않지만 Eclipse는 괜찮다고 알려줍니다.

어떤 형태를 사용해야합니까?


사용하여 \n줄 바꿈과 \t당신이 탭을 삽입 할 경우.

<b>굵은 텍스트, <i>기울임 꼴 및 <u>밑줄이있는 텍스트 와 같은 기본 서식에 일부 XML 태그를 사용할 수도 있습니다 .

다른 형식 옵션은 Android 개발자 사이트의이 문서에 나와 있습니다.
https://developer.android.com/guide/topics/resources/string-resource.html#FormattingAndStyling


res 문자열을 참조하는 경우 \ n과 함께 CDATA를 사용하십시오.

<string name="about">
    <![CDATA[
 Author: Sergio Abreu\n
 http://sites.sitesbr.net
  ]]>        
</string>

또한 \ n 대신 <br>을 추가 할 수 있습니다.

그런 다음 TexView에 텍스트를 추가 할 수 있습니다.

articleTextView.setText(Html.fromHtml(textForTextView));

참고 : &#xA;Android xml String.xml파일 에서 이상하게도 충분히 작동 하지만 테스트 할 때 장치에 표시되지 않는 단락 나누기를 제공 하는 다른 게시물을 보았습니다 (끊김이 전혀 표시되지 않음). 따라서 \n둘 다에 나타납니다.


다음은 다운로드 된 HTML과 같이 소스 문자열에 액세스 할 수 없을 때 사용하는 것입니다.

// replace newlines with <br>
public static String replaceNewlinesWithBreaks(String source) {
    return source != null ? source.replaceAll("(?:\n|\r\n)","<br>") : "";
}

XML의 경우 <br/>대신 대체하도록 편집해야 합니다.

함수에서의 사용 예 (명확성을 위해 추가 호출이 제거됨) :

// remove HTML tags but preserve supported HTML text styling (if there is any)
public static CharSequence getStyledTextFromHtml(String source) {
    return android.text.Html.fromHtml(replaceNewlinesWithBreaks(source));
}

... 그리고 추가 예 :

textView.setText(getStyledTextFromHtml(someString));

참고 URL : https://stackoverflow.com/questions/2877828/line-break-in-xml-formatting

반응형