Задать вопрос
@calculator212

Где в коде хранятся строки из strings.xml в Android studio?

В общем возник такой вопрос и я не знаю как правильно загуглить его. В Android studio можно обратиться к к какой нибудь-строке из strings.xml, как будто это переменная находится в каком-то классе, хотя реально они в этот момент времени прописаны только в xml файле. Правильно ли я понимаю, что при сборке проекта где-то автогенерятся эти строки и потом программист уже программа может получать доступ к этим строкам?
  • Вопрос задан
  • 270 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
zagayevskiy
@zagayevskiy Куратор тега Android
Android developer at Yandex
Строки лежат в xml(может быть в бинарном виде запакованном) в ресурсах приложения. Также генерируется R-файл(IDE его генерирует, и при билде он тоже генерируется), в нём лежат айдишники строк, не сами строки. В рантайме строки из ресурсов читаются по айдишникам из R-файла, есть специальный класс Resources, в нём используется AssetManager. Когда ты делаешь
context.getString(R.string.mystring) или context.getResources().getString(R.string.mystring) это и происходит.
Хочешь узнать больше - открывай код и читай его.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
samodum
@samodum
Какой вопрос - такой и ответ
Ну это основы андроида. В любой книге на первых страницах об этом рассказано.
Нет, ты неправильно понял. Программист имеет доступ к ресурсам сразу в коде.
Гугли основную документацию или книги для новичков
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы