2012-08-03 3 views
21

하드 코딩 된 문자열을 갖는 것이 왜 그렇게 나쁜지 설명해주십시오. 문자열을 하드 코드하면 어떤 문제가 발생합니까? 별도의 문자열 xml 파일로 이러한 문제가 해결되는 이유는 무엇입니까?Android에서 strings.xml을 사용하는 이유는 무엇입니까?

strings.xml에서 새 요소를 만드는 것은 시간이 많이 걸리는 작업입니다.

+0

로컬 화뿐만 아니라 중앙 집중화도 요인 중 하나입니다. –

+3

[Android - 문서] (http://developer.android.com/guide/topics/resources/string-resource.html)에서 더 잘 설명 할 것입니다. – user370305

답변

31

문자열을 strings.xml에 추가하면 전체 앱을 다른 언어로 쉽게 번역 할 수 있습니다.

<string name="hello">Hello</string> 

이 내용으로 strings.xmlvalues-fr에서 :

그래서 폴더 values에서이 내용으로 strings.xml있을 것

<string name="hello">Bonjour</string> 

이 당신에게 많이 절약 할 수 작업 이것을 하드 코딩 된 방식으로하는 대신 Android는 사용자 기본 설정에 따라 올바른 언어를 자동으로 선택합니다. 이 언어를 선택하고 표시하는 것에 대해 걱정할 필요가 없습니다.

Localization | Android Developers도 읽으십시오.

11

덧붙여, 문자열을 가지고 있다고 가정 해 봅시다. 예를 들어 앱의 모든 활동에서 반복되는 제목이 있다고합시다. 잠시 후, 당신은 그 제목을 바꾸기로 결정했습니다.

strings.xml을 사용하면 한 곳에서 변경해야하며 모든 활동에서 하드 코드 값을 변경해야합니다.

0

문자열은 XML 파일 이름이 아닌 name 특성에 제공된 값을 사용하여 참조되는 간단한 리소스입니다. 따라서 하나의 XML 파일에 문자열 리소스를 다른 간단한 리소스와 결합하여 <resources> 요소 아래에 추가 할 수 있습니다.

관련 문제