Как я могу предотвратить изменение размера ImageView, чтобы оно соответствовало программному размеру экрана? - PullRequest
0 голосов
/ 03 января 2019

Я делаю 2D-игру типа платформер.Я сделал ImageView с использованием JAVA, то есть предполагается, что примерно вдвое больше размера экрана по горизонтали.

Однако, когда отображается ImageView, независимо от размераИзображение, оно продолжает меняться, чтобы соответствовать моему экрану.Обратите внимание, что я не использую XML, но я использую исключительно JAVA. Как я могу предотвратить это?

Вот код:

    ConstraintLayout gameLayout;
    gameLayout = findViewById(R.id.gameLayout);


    ImageView map = new ImageView(this);
    map.setImageResource(R.drawable.tutorial_map);
    map.setX(0);
    map.setY(0);
    gameLayout.addView(map);

Не стесняйтесь редактировать, если необходимо.

Ответы [ 2 ]

0 голосов
/ 03 января 2019

Какие рамки вы используете для создания игры.Мое предложение было бы использовать libgdx, который очень легкий, кроссплатформенный и потрясающий.Поверьте мне, этот вопрос будет наименьшим из ваших проблем.Как разработчику, вы должны думать о том, как ваш код изменится завтра.Итак, поскольку вы используете просмотр изображений, просто установите фиксированную ширину окна и масштабируйте просмотр изображений по своему желанию.Ура!

0 голосов
/ 03 января 2019

Использование map.setScaleType(ScaleType.FIT_XY);

или

Вы также можете использовать map.setAdjustViewBounds(true);

Убедитесь, что вы используете map.setBackgroundResource(R.drawable.tutorial_map) вместо map.setImageResource(R.drawable.tutorial_map).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...