Я создаю объект EditText
, который затем попытаюсь ссылаться в модульном тесте. Каков наилучший способ добавить новый id
в R.id
для этого динамически созданного объекта, чтобы я мог позже ссылаться на него через findViewById()
в модульном тесте?программно добавить id в R.id
81
A
ответ
188
Вы можете установить идентификаторы, которые вы будете использовать позже в классе R.id, используя файл ресурсов xml, и пусть Android SDK предоставит им уникальные значения во время компиляции.
Рез/значения/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? –
+2
Извините за поздний ответ, но да, как и во всех Android-ресурсах, вы можете назвать этот .xml в любом случае вам нравится ... –
возможно дубликат [Android: View.setID (интермедиат идентификатор) программно - как избежать ID конфликты?] (Http://stackoverflow.com/questions/1714297/android-view-setidint-id-programmatically-how-to-avoid-id-conflicts) – rds