'변수'에 해당되는 글 2건

  1. 안드로이드 개발 - R.drawable.변수 R.string.변수 사용하기 1
  2. 안드로이드 개발 - String.xml 문자열/정수(숫자) 변수 설정하기
안드로이드 자바에서는 이미지나 문자열 리소스를 불러올때 R.drawable. 이나 R.string 을 사용합니다.
그런데 이미지나 문자열을 불러올때 이미지 이름이나 문자열 이름을 달리하여 변수로 사용하고 싶을 때가 있습니다.

예를들면 R.drawable.t_1 R.drawable. t_2  R.drawable.t_3 와 같이 규칙성있는 이미지같은걸 말합니다.

Drawable 그림파일 변수


    tmpSign = "n_"+ 변수;



// 가변 아이콘을 호출할 경우

int lid = this.getResources().getIdentifier(tmpSign, "drawable", this.getPackageName());

((ImageView)v.findViewById(R.id.iconView)).setImageResource(lid);


// 가변 아이콘을 호출할 경우

int lid = this.getResources().getIdentifier(tmpSign, "string", this.getPackageName());

String str = this.getString(lid); 혹은 this.getResouces().getString(lid); 

String 문자열 변수

 
int lid = getResources().getIdentifier("변수", "string", getPackageName());

tv_nation.setText( lid );    

그냥 lid를 사용하면 R.java에 저장되어있는 숫자 값으로 나옵니다.
따라서 getString(lid)로 표현해줘야만 문자열이 나옵니다.


도움이 되셨나요?
그럼 손가락을 눌러주세요:) 

안드로이드 개발할시 주로 문자열을 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. 









도움이 되셨나요?

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