Подтвердить что ты не робот

Какую папку разместить 9png изображения?

Мы используем 9png в основном для уменьшения размера apk. Но я столкнулся с особой проблемой. Я не уверен, в какой папке я должен разместить 9pngs. Я поместил их в папку HDPI. Поскольку Android "умный", похоже, если я использую приложение в телефоне MDPI, он "масштабирует" 9png, что создает сумасшедшие эффекты. Я не сталкивался с какой-либо серьезной проблемой, пока не попробовал ее в заметке Галактики. Похоже, что 9png было взято из HDPI и масштабировано (Note имеет 800x1280), и это создало странные эффекты.

  • Итак, какое место нужно поместить в 9png?
  • Как сообщить системе Android не "масштабировать" 9png на основе папки, в которую она помещена?
4b9b3361

Ответ 1

В соответствии с Romain Guy answer в группах Google:

Поведение 9-патча undefined при сжатии. На практике вы будете см. перекрытия различных разделов 9patch. Не делайте этого:)

Из того, что я заметил в своих проектах, 9PNG уменьшен так же, как и любой обычный PNG, поэтому я обычно запрашиваю у нашего дизайнера весь набор изображений для ldpi, mdpi, hdpi и xhdpi, и я преобразую их все в 9patches.

Это, если нет очень простой 9patch, как обычный фон кнопки, это не имеет никакого значения, когда растягивается или сокращается, поэтому я обычно помещаю его в обычную папку drawable.

Ответ 2

У меня была аналогичная проблема с девятым патч-изображением: если я поместил его в папку res/drawable, он не работал на экране ldpi (исказил изображение и потерял прозрачность).

Решение для меня состояло в том, чтобы поместить его в папку res/drawable-nodpi. В документации указано:

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

Ответ 3

Просто поместите 9png в папку HDPI.

если эффект выглядит странно в вашей заметке о галактике.

Попросите дизайнера дать вам новый файл 9png для XHDPI. а затем поместите новый файл в папку XHDPI.