java - Android - 将 Canvas /位图拉伸(stretch)至全屏宽度

标签 java android android-canvas

我有一个 Canvas ,我在其中绘制了很多位图。准确地说是 15x15。

现在,我要做的是确保这 15 列位图背对背地延伸到整个屏幕宽度。但由于 160/15 不是整数,我不能只将它们的宽度设置为适当的值。

有没有什么方法可以拉伸(stretch)它们,或者拉伸(stretch)整个 Canvas ,使其紧贴屏幕?

谢谢。

最佳答案

您可以使用 Matrix 对象调整位图的大小。

float scaleWidth = ((float) newWidth) / width;
float scaleHeight = ((float) newHeight) / height;

Matrix matrix = new Matrix();
matrix.postScale(scaleWidth, scaleHeight);

Bitmap resized = Bitmap.createBitmap(bm, 0, 0, width, height, matrix, false);

关于java - Android - 将 Canvas /位图拉伸(stretch)至全屏宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8104521/

相关文章:

java - Java 中是否有一个预先存在的类来定义数字操作序列?

android - AppBarLayout 在滚动行为上隐藏工具栏,切换 fragment

android - 撤消在android中自定义 ImageView 上的绘制

java - 调用应修改多个变量的方法时的最佳策略

java - 如何在 Spring 的 HttpServletResponse 中返回 Apache 的 HttpResponse?

java - 如何使用父类(super class)中存在的名称重命名方法?

android - 谷歌加登录与谷歌分析

android - 如何在运行后端代码时更改 android studio 中的默认端口号?

Android:是否可以创建这种类型的圈子?

Android Canvas 使用位图撤消和重做