Ссылка на ресурс в Android

#android #android-layout #android-manifest

#Android #android-макет #android-манифест

Вопрос:

Я новичок в Android и играю с некоторыми кодами Hello World.Я заметил, что Android помещает каждый ресурс, т. Е. изображение, строку и т.д. в res папку, И мы Получаем к нему доступ как @drawable/icon т.е. icon изображение в папке drawable или like, R.layout.main что означает main.xml внутри layout папки.

Но при доступе к строкам мы используем @string/string_name , но не указываем имя родительской папки, т.е. values . Почему синтаксис отличается для strings ?
Это может показаться глупым, но это заставляет задуматься и задать этот вопрос.

Ответ №1:

Все ресурсы одного типа в Android находятся в плоской иерархии. Вы указываете не имя каталога, а тип ресурса.

Боюсь, даже если вы разделите все строки между разными файлами, это всегда будет @string/string_name .

Хорошая вещь, которую вы можете сделать, чтобы получить некоторую структуру, — это сделать что-то похожее на это:

@string/error_network_io 
@string/error_network_unknown_host 
@string/message_save_successful 
...

Комментарии:

1. Нет проблем, я думаю, это очень хорошо, что вы сразу начинаете задавать эти вопросы. Проекты могут быстро выйти из-под контроля, если у вас нет системы для хранения ресурсов!

2. Ага. Я застревал во многих точках, и StackOverflow всегда выручал меня.