如何防止 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 的宽度设置为固定宽度并根据需要缩放图像视图。干杯!
我正在制作一款 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 的宽度设置为固定宽度并根据需要缩放图像视图。干杯!