@LaitVersion

Как вы задаете id элементов в xml?

В соответствие с документацией (если мне не изменяет память) имена должны быть уникальными только в пределах одной xml, но так-же рекомендуется задавать полностью уникальные id для всего приложения если это возможно, так вот скажите как вы задаете имена и почему? Сейчас использую полностью уникальные id и этот подход мне не нравится.
  • Вопрос задан
  • 320 просмотров
Решения вопроса 1
zagayevskiy
@zagayevskiy Куратор тега Android
Android developer at Yandex
Стараюсь делать айди уникальными в рамках приложения, так проще жить. Из любого места, где айди используется, однозначно понятно, из какого он лэйаута, go to declaration работает нормально. И в обратную сторону - find usages, тоже. Это важно.
Есть минимум два места, где это важно (т.к. инфлейт отделён от использования) - в адаптерах (инфлейт в адаптере, использование в холдере), и когда реализация MVP View отделена от инфлейта.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
AlexanderYudakov
@AlexanderYudakov
C#, 1С, Android, TypeScript
Не читайте это
...имена должны быть уникальными только в пределах одной xml.

Тогда получится btnExit

...так-же рекомендуется задавать полностью уникальные id для всего приложения если это возможно.

Тогда получится MainActivity_btnExit

А можно не мелочиться и сделать id ресурсов глобально уникальными, так надежнее:
com_example_myapp_MainActivity_btnExit

Однако в жизни при выборе того или иного решения неплохо было-бы представлять себе, зачем вы это делаете.

Я использую максимально короткие идентификаторы, уникальность в пределах одной xml обеспечивается, в пределах приложения - нет, в пределах вселенной тоже нет (никакой необходимости в этом на самом деле не существует).

Проще так код выглядит.


Соглашусь с ответом Дениса.

В моем случае модель разработки несколько отличается от стандартной, айдишники контролов используются редко, могу себе позволить сделать их короткими и потерять уникальность в рамках проекта.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы