Могу ли я сделать ссылку легко для большего количества ресурсов?

Я разрабатываю игру. Я хотел бы, чтобы изображение отображалось на экране. Он должен заполнить экран на 90% по ширине (около 90%). Я не хочу, чтобы система изменяла размеры моих изображений (мне не нравится качество, которое это дает). Я хотел бы размещать картинки без изменения масштаба / изменения размера.

<ImageView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:background="@drawable/myPicture"/>

Вот как я хочу, чтобы это выглядело на разных экранах:

В этом случае у меня есть изображение ресурса в 2 размерах (ширина: 720px для первого, 1440px для 2-го и 3-го). (3-й - это планшет) Я знаю, если бы я поместил их в разные папки для рисования, это было бы хорошо.
Для первого: drawables-mdpi
Для второго: drawables-xxdpi
Для третьего: drawable-mdpi-xlarge

Единственная проблема с этим: мой apk будет больше, чем мог (2-е изображение дублируется, потому что его копия находится в другой папке)

Мой вопрос: как я могу сделать эту работу без дублирования и легко обслуживаемой?

Результаты моего google-ing: не используйте разные папки для рисования, я должен использовать это так:
/ вводимого коэффициента /

  • myPicture_720.png
  • myPicture_1440.png

Тогда я могу сделать разные макеты для каждого типа экрана, и апк не будет намного больше. Проблема с этим: слишком много работы, чтобы поддерживать

Более простой способ:
Используйте refs.xml
http://blog.vogella.com/2013/08/13/using-xml-layout-references-in-android/
/values-mdpi-xlarge/refs.xml

    <?xml version="1.0" encoding="utf-8"?>
<resources>
    <item type="drawable" name="myPicture">@drawable/myPicture_1440</item>
</resources>

(Это для 3-го экрана)

Таким образом, у меня может быть только один макет, и будет использоваться нарисованный ресурс хорошего размера.

Единственная проблема:
Мне все еще приходится много вести из-за имен.
Я использую плагин Photoshop (Cut 'n' Slice Me), который экспортирует чертежи в 4 разных размерах в 4 разных папках для 4 основных плотностей.

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

Я думаю, что это должно работать так:
Я мог сделать 2 разные папки и сделать ссылку на всю папку, чтобы получить из нее доступные для рисования ресурсы. (В одной папке имена будут одинаковыми (myPicture.png)

Замечания:
В моем примере были упомянуты 720px и 1440px. В реальном dev он не будет двойным, поэтому изменение размера может сделать его еще хуже.

TLDR:
Если мои drawables-xxdpi и drawables-mdpi-xlarge будут одинаковыми, как я могу заставить систему использовать хорошие ресурсы, не дублируя папку?

0 ответов

Другие вопросы по тегам