【发布时间】:2011-12-15 05:58:12
【问题描述】:
大家好,我尝试使用自定义 MapField 在地图上显示多个位置。我能够在地图上显示位置。但无法移动图像,也无法放大和缩小。我尝试使用自定义 MapField,但它仍然不适合我.. 这是我的代码
class CustomMapField extends MapField
{
Bitmap mIcon;
XYRect mDest;
public void moveTo(Coordinates coordinates)
{
super.moveTo(coordinates);
mDest = null;
}
protected void paint(Graphics graphics)
{
super.paint(graphics);
if (null != mIcon)
{
if (null == mDest)
{
XYPoint fieldOut = new XYPoint();
convertWorldToField(getCoordinates(), fieldOut);
int imgW = mIcon.getWidth();
int imgH = mIcon.getHeight();
mDest = new XYRect(fieldOut.x - imgW / 2,fieldOut.y - imgH, imgW, imgH);
}
graphics.drawBitmap(mDest, mIcon, 0, 0);
}
}
}
【问题讨论】:
-
您的目标操作系统版本是什么?
-
@jprofitt 版本 5 及以上。
-
不幸的是,您必须自己实现缩放和平移。这是可能的(我已经做到了),但确实需要大量代码才能使其与触摸和滚轮设备一起使用。
-
嘿,非常感谢......你能帮我一些代码吗
标签: blackberry maps