프로그래밍 방식으로 R.id에 ID 추가


89

EditText단위 테스트에서 참조하려고 하는 개체를 만들고 있습니다. 나중에 단위 테스트에서 참조 할 수 있도록이 동적으로 생성 된 개체 idR.id대해 새 개체 를 추가하는 가장 좋은 방법은 무엇입니까 findViewById()?


답변:


208

xml 리소스 파일을 사용하여 나중에 R.id 클래스에서 사용할 ID를 설정하고 Android SDK가 컴파일 시간 동안 고유 한 값을 제공하도록 할 수 있습니다.

res / values ​​/ ids.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <item name="my_edit_text_1" type="id"/>
    <item name="my_button_1" type="id"/>
    <item name="my_time_picker_1" type="id"/>

</resources>

코드에서 사용하려면 :

myEditTextView.setId(R.id.my_edit_text_1);

1
anothername.xml 파일을 호출 할 수 있습니까?
ofir_aghai

2
늦게 답장을 드려 죄송합니다.하지만 모든 Android 리소스와 마찬가지로 원하는대로 .xml 이름을 지정할 수 있습니다.
Hidden Android

1

Google 개발자에 따라 모든보기에 setId를 사용하고 양수를 할당 할 수 있습니다.

이보기의 식별자를 설정합니다. 식별자는이 뷰의 계층 구조에서 고유하지 않아도됩니다. 식별자는 양수 여야합니다. 링크

그래서 당신은 사용할 수 있습니다

EveryView.setId(int);
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.