Kum*_*mar 4 maps gps blackberry jsr179
我想知道如何使用我们自己的徽标来显示BBMap中的特定位置?谁能知道怎么做?
在Blackberry Map中无法显示POI的自定义图标.
您可以在Blackberry地图上的位置中包含的内容:
请参阅什么是 - BlackBerry Maps位置文档格式
作为替代方案,您可以尝试MapField + manager/screen paint override.
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);
}
}
}
Run Code Online (Sandbox Code Playgroud)
使用示例:
class Scr extends MainScreen {
CustomMapField mMapField;
Coordinates mCoordinates;
public Scr() {
LocationProvider provider = null;
Location location = null;
try {
provider = LocationProvider.getInstance(null);
} catch (LocationException e) {
e.printStackTrace();
}
try {
location = provider.getLocation(-1);
} catch (LocationException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
mCoordinates = location.getQualifiedCoordinates();
add(new LabelField("Latitude: "
+ String.valueOf(Coordinates.convert(
mCoordinates.getLatitude(),
Coordinates.DD_MM_SS))));
add(new LabelField("Longitude: "
+ String.valueOf(Coordinates.convert(
mCoordinates.getLongitude(),
Coordinates.DD_MM_SS))));
mMapField = new CustomMapField();
mMapField.mIcon = Bitmap.getBitmapResource("poi_icon.png");
mMapField.moveTo(mCoordinates);
add(mMapField);
}
}
Run Code Online (Sandbox Code Playgroud)
另请参阅"
Blackberry GPS和BlackBerry Maps开发指南"中的" 使用MapComponent
"
如果是真实设备,请确保GPS可用并打开.
如果是模拟器,那么在启动程序之前使用模拟器菜单 - >模拟 - > GPS位置来设置GPS数据.
其他选项是硬编码您自己的Coordinats并在没有GPS的情况下使用它们:
double latitude = 51.507778;
double longitude = -0.128056;
Coordinates mCoordinates = new Coordinates(latitude, longitude, 0);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4929 次 |
| 最近记录: |