0

我正在与另外两个人一起研究一个 Android 项目 (2.2)。

我们希望显示一些大学建筑的地图,以便您更轻松地找到房间。我们使用自定义 ImageView ( TouchImageView )。

我使位图可变

plant = plant.copy(Bitmap.Config.ARGB_8888, true);

所以我可以把画布放在它上面。然后我在上面画一个红色圆圈

Paint paint = new Paint(); paint.setColor(Color.RED); Canvas canvas = new Canvas(plant); canvas.drawCircle(xFromSearch, yFromSearch, 15, paint);

xFromSearch 和 yFromSearch 是已经用给定值初始化的全局变量。

它适用于我的 Google G1,但对于其他显示器尺寸(例如 AVD 或三星 Galaxy SII),圆圈被画在错误的位置......

当我做某事时它可以工作吗

Display display = getWindowManager().getDefaultDisplay(); screenWidth = display.getWidth(); screenHeight = display.getHeight();

??

我希望我给了你所有你需要的信息,有人可以帮助......非常感谢!

4

1 回答 1

0

试试这个

int scale = getApplicationContext().getResources().getDisplayMetrics().density;
canvas.drawCircle(xFromSearch*scale , yFromSearch*scale , 15*scale , paint);
于 2012-07-04T12:04:29.267 回答