728x90
여러 경우 id를 변경하면서 component를 찾는 경우라던지,
id를 알지만 특수한 경우 우회해서 component를 찾는 경우 아래와 같이 가능하다.
component외 string등 다양하게 변경도 가능하다.
먼저, 아래와 같이 코드를 이용하면 된다.
String str_PackgeNm = this.getPackageName();
final int abTitleId = getResources().getIdentifier("component_id","id", str_PackgeNm);
findViewById(abTitleId).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(getApplicationContext(), "tttt",Toast.LENGTH_LONG).show();
}
});
위 코드에서 getIdentifier의 두번째 parameter인 id를 대신하여 string으로 넣고
resource값에 존재하는 string값 중 id를 component_id에 넣게 되면 해당 값을 가져올 수 있다.
다양한 방법으로 응용이 가능하여 많이 쓰일듯 하다.
728x90
'Programing > android' 카테고리의 다른 글
[android studio] Drawable을 Bitmap으로, Bitmap을 Drawable로 변경하기 (0) | 2021.10.24 |
---|---|
[android studio] MPAndroidChart 차트 구현하기 (0) | 2021.10.22 |
[android studio] 초기 db파일을 생성 후 앱실행시 설치하 (0) | 2021.10.20 |
[android studio] 일출 일몰 가져오기 (0) | 2021.10.17 |
[android studio] 일자를 이용하여 요일 구하기 (0) | 2021.10.15 |
댓글