Как управлять чертежами для телефона и планшета, как с разрешением hdpi?

#android #resources #drawable #tablet #hdpi

#Android #Ресурсы #отображаемый #планшет #hdpi

Вопрос:

Я пытался запустить свое приложение на эмуляторе, подобном Nexus-One, и на Galaxy-Tab, подобном. Насколько я знаю, оба устройства имеют разрешение hdpi, но Nexus считается большим, а Galaxy Tab — xlarge. У меня есть две папки для моих чертежей: drawable-large-hdpi и drawable-xlarge-hdpi. Однако Galaxy Tab использует ресурсы из папки drawable-large-hdpi. Для меня это не имеет смысла. Я делаю что-то не так? Как я могу управлять своими ресурсами так, чтобы они помещались на обоих экранах? Спасибо.

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

1. вы уверены, что это происходит на реальном устройстве?

2. У меня нет Galaxy Tab, я пробовал его на эмуляторе.

3. @Egor, как ты решил эту проблему? У меня такая же проблема.

Ответ №1:

Две вещи, вы, вероятно, ошибаетесь, говоря, что Galaxy tab xlarge, насколько я помню, у него был большой экран, проверьте это. Во-вторых, прочтите здесь, чтобы узнать больше об этом. Поверьте мне, это может стать действительно запутанным и трудным для запоминания 🙂

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

1. Итак, как мне поступить? Нужно ли мне масштабировать чертежи в коде? Кажется, много грязной работы..

2. Проблема в том, что я разрабатываю игру, используя AndEngine на основе OpenGL. Чертежи из папки hdpi не масштабируются на Galaxy Tab, и я не хочу масштабировать их вручную. У меня есть набор изображений для разрешения и размера вкладки, но я не могу заставить Android извлекать их из этой конкретной папки.

Ответ №2:

7-дюймовый экран может быть либо большим, либо увеличенным в соответствии с http://d.android.com/guide/practices/screens_support.html Для Galaxy Tab он, похоже, считается большим.

Проблема также может заключаться в том, что Android 2.2 не имеет квалификатора XLarge, поэтому по умолчанию он не имеет значения Large. Этот квалификатор был введен в Android 2.3. Я не думаю, что 2.3 еще не был распространен на Galaxy Tabs, поэтому, возможно, ресурсы могут измениться с обновленной версией.

Ответ №3:

Возможно, это немного запоздало, но, я думаю, лучше поздно, чем никогда.

7-дюймовый Galaxy Tab считается «большим». Если AndEngine неправильно извлекает ваши ресурсы из папки «drawable-large-hdpi», то, скорее всего, это связано с вашим AndroidManifest.xml . Убедитесь, что у вас есть тег «supports-screens», а для атрибута «large» установлено значение true. Пример:

 <supports-screens android:large="true".../>
  

Вероятно, вам также понадобятся другие атрибуты (например, «обычный») для поддержки телефонов. В качестве запасного варианта также включите «anyDensity».