Как я могу сделать приложение BlackBerry, которое подходит практически для всех устройств - PullRequest
1 голос
/ 07 мая 2011

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

Я имею в виду, в основном, выравнивание компонентов устройства.Есть ли стандартная процедура для этого, как в Android

Ответы [ 3 ]

3 голосов
/ 11 мая 2011

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

Приложение имеет три папки:

  • / res / hdpi (240x)
  • / res / mdpi (320x)
  • / res / ldpi (480x)

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

public class DisplayUtils {
    public static float density = DisplayUtils.getDensity();

    private static float getDensity() {
        float dpi = (Display.getHorizontalResolution() * 0.0254f);
        if (dpi <= 135.0f) {
            return 0.75f;
        } else if (dpi <= 200.0f) {
            return 1.0f;
        } else {
            return 1.5f;
        }
    }

    public static int convertPxToDp(int px) {
        return (int) (px * DisplayUtils.density + 0.5f);
    }
}

Все приложение выравнивает все относительно других элементов, так что в целом оно выглядит хорошо.Самая большая проблема в том, что Storm / Torch будет выглядеть немного маленьким из-за того, что его рассматривают как MDPI вместо HDPI.Это должно как минимум дать вам хорошее начало.

2 голосов
/ 09 мая 2011

попробуйте установить позиции относительным образом, например:

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

, но этоне всегда идеален в зависимости от используемой графики.

1 голос
/ 09 мая 2011

Я потратил много времени на эту тему.Самая лучшая и самая простая идея на мой взгляд - «сделать» всю вашу графику с помощью графических API BlackBerry.Тогда все ваши поля будут легко уменьшаться и расширяться в зависимости от разного разрешения устройства.

У вас всегда может быть три разных набора графики (каждый из которых предназначен для разного разрешения).В моей голове много работы.

...