如何防止 ImageView 以编程方式调整大小以适合屏幕?

How can I prevent an ImageView from resizing to fit the screen programmatically?

我正在制作一款 2D 平台类游戏。我使用 JAVA 制作了一个 ImageView 应该 大约是屏幕水平尺寸的两倍。

但是,当显示 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);

如有必要,请随时进行进一步编辑。

使用map.setScaleType(ScaleType.FIT_XY);

您也可以使用map.setAdjustViewBounds(true);

确保使用 map.setBackgroundResource(R.drawable.tutorial_map) 而不是 map.setImageResource(R.drawable.tutorial_map).

您使用什么框架构建游戏。我的建议是使用 libgdx,它超轻量级、跨平台而且很棒。相信我,这个问题将是您遇到的最少的问题。作为一名开发人员,您需要考虑明天您的代码将如何变化。 因此,由于您使用的是图像视图,只需将 window 的宽度设置为固定宽度并根据需要缩放图像视图。干杯!