모바일/Development

[TIP] Android string format (%1$s...) 사용하기

두뇌미포함 2014. 2. 6. 17:01
728x90
반응형

string 을 %1$s, %2$d과 같이 사용하고 싶을 때 사용하는 방법

 

소스 

StringFormat.zip

 

1. strings.xml 에 원하는 string을 추가한다. %1$s 를 알맞게 넣어준다.

<string name="which_you_want">Example: %1$s is gonna boom</string>

 

 

2. Java에다 알맞게 수정한다.

Resources resources = Context.getResources();  // Context에 this나 클래스 네임

String example = String.format(resources.getString(R.string.which_you_want), 변수);

 


 

 

 


이 형식을 왜 사용할까?

 

변수와 함께 string을 쓸 경우, locale이 2개 이상일시 편리하다.

참조) values/strings.xml 에 <string name="A">"I have "</string> 와

values-ko/strings.xml 에 <string name="A">"내가 가진 것 "</string>

...

String mV = Money;

사용할시 TextView의 setText를 이용하여 (R.string.A + mV) 로 할때 불편하다.


위와 같은 경우로는 영어로는 "I have Money" 지만

한국어로는 "내가 가진 것 Money" 로 부자연스럽다.


 

레퍼런스 참조: http://developer.android.com/reference/java/util/Formatter.html

 

 

728x90