Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
xSCJx
22 / 19 / 6
Регистрация: 24.12.2012
Сообщений: 435
#1

Почему работает? - Программирование Android

04.01.2015, 23:20. Просмотров 333. Ответов 3
Метки нет (Все метки)

Всем привет. Недавно начал изучать Android, и вот возник вопрос. Пишу в Eclips'е, при создании проекта создается две папки appcompat_v7 и папка самого проекта, у меня есть такая строка кода:
XML
1
<item name="android:background">@drawable/abc_item_background_holo_dark</item>
файл abc_item_background_holo_dark изначально находился в папке appcompat_v7, но я скопировал его себе в папку проекта. При запуске и на Android 4.2 и на 2.3.4, все работает отлично. И вот я удалил этот файл из папки проекта. Думал после этого даже не скомпилится, но мало того что оно скомпилировалось, так еще и работало без изменений. В чем дело?
Вот что думаю я. При создании .apk файла все ресурсы идут в него, это да, но вот почему работает строка @drawable/abc_item_background_holo_dark, даже если этот файл не в папке с проектом.
http://www.cyberforum.ru/android-dev/thread933849.html
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.01.2015, 23:20
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Почему работает? (Программирование Android):

Почему не работает GET запрос?
Maxens, А что происходит? Ошибка? Исключение?

Почему .setBackground не работает?
У меня кнопки представляют собой TextView'ы, на которых по умолчанию выставлены...

Почему не работает setTop()
protected void onCreate(Bundle savedInstanceState) {...

Почему здесь не работает Intent?
Intent берет значение по умолчанию, а не то, которое в классе Touch подскажите...

Почему оператор сравнения не работает?
Здравствуйте, Простой вопрос, очень простой, но ввел в ступор Есть...

3
Kastaneda
Jesus loves me
Эксперт С++
4760 / 2963 / 340
Регистрация: 12.12.2009
Сообщений: 7,523
Записей в блоге: 2
Завершенные тесты: 1
04.01.2015, 23:26 #2
Система построения знает где искать abc_item_background_holo_dark и включит его в apk файл во время сборки. Не нужно копировать подобные файлы себе в проект.
1
xSCJx
22 / 19 / 6
Регистрация: 24.12.2012
Сообщений: 435
04.01.2015, 23:34  [ТС] #3
Kastaneda, то есть я могу использовать любые файлы из compile with версии и они попадут в apk и будут корректно отображаться на других версиях (даже ранних)?
0
Kastaneda
Jesus loves me
Эксперт С++
4760 / 2963 / 340
Регистрация: 12.12.2009
Сообщений: 7,523
Записей в блоге: 2
Завершенные тесты: 1
04.01.2015, 23:54 #4
Лучший ответ Сообщение было отмечено xSCJx как решение

Решение

Цитата Сообщение от xSCJx Посмотреть сообщение
и будут корректно отображаться на других версиях (даже ранних)?
Нет, там некоторые ресурсы не поддерживаются на ранних версиях. Мне IDE подсказывает (типа это досупно только в API 14 и выше, а у тебя API 11). Поэтому, если IDE не подсказывает, то лучше проверять совместимость, если не уверен.

Цитата Сообщение от xSCJx Посмотреть сообщение
и они попадут в apk
apk - это по сути zip архив. Его можно zip'ом открыть и посмотреть что там лежит, например в папке drawable.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.01.2015, 23:54
Привет! Вот еще темы с решениями:

Почему в EditText не работает html тэг <strike>?
Добрый вечер, Почему не работает конструкция: Spanned s=...

OnTouchEvent() работает не при касании, а при касании + движение, почему?
Здравствуйте! Есть приложение, где выполняется определенное действие при...

Socket.io (прослушивание события работает на Desktop и не работает на Android)
Есть метод, прослушивающий событие сервера по soket.io (import...

RSS-читалка - работает на эмуляторе, не работает на реальном девайсе
День добрый. Есть несложная читалка на основе вот этой вот, для парсинга...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru