안드로이드 개발할시 주로 문자열을 string.xml 에서 관리합니다. 그런데 이 문자열 사이에 값이 달라지는 변수를 두고 싶을때가 있습니다.


(저 알림창에서의 변수는 10입니다.)

String.xml 문자열/정수 변수 설정하기 - 변수 설정하기
 

"[변수A]가 [변수B]에게 인사합니다." 할때 "변수A, B" 부분이 달라지게 하고 싶을때 :

String.xml
<string name="hello">%1$s가 %2$s에게 인사합니다.</string> 

 %1$s : string  (문자열일시)     %1$d : int   (숫자일시)


JAVA
그리고 자바에서는 아래와 같이 코드를 해줍니다.
Resources res = getResources();
String text = String.format(res.getString(R.string.hello), "아이", "선생님"); 




결과값 -> 아이가 선생님에게 인사합니다.




 
영어권에서 복수형 단어 처리하기

영문으로 할 때에는 여러개일 경우에는 s가 붙는 거처럼 복수형 형태가 되는 경우가 있습니다.

String.xml

  <plurals name="file">
        
<item quantity="one">One file found.</item>
        
<item quantity="other">%d files found.</item>
    
</plurals>
 

%s : string   (문자열일경우)    %d : int    (숫자일경우)



JAVA
String.format(getResources().getQuantityString(R.plurals.file, 2), 4);
출력-> 4 files found.
String.format(getResources().getQuantityString(R.plurals.file, 1), 4);
출력-> One file found. 









도움이 되셨나요?

그럼 손가락을 눌러주세요:)