我需要更改当用户点击RichMapField中的引脚时发生的情况,并且这些引脚恰好是MapLocation对象,这些MapLocations还可以选择性地处理称为“Partner”类的不同数据类型,其中包含ID,Address ,标签,纬度和经度。
一切都运行得很好,因为当你将鼠标悬停在别针上时,它仍然会给出标签等等,但是当你点击它时,什么都不做。
此行为是预期的!所以到目前为止,一切都很顺利。
我似乎无法弄清楚,如何将点击或触控侦听器附加到新的自定义MapLocation对象。
继承了代码而没有进一步的adu:
import net.rim.device.api.lbs.maps.model.MapLocation;
import net.rim.device.api.ui.component.Dialog;
public class CustomMapLocation extends MapLocation {
private Partner partner;
public KRMapLocation(double lat, double lon, String label, String address) {
setLat(lat);
setLon(lon);
setName(label);
setDescription(address);
}
public KRMapLocation(Partner p) {
this.partner = p;
setLat(partner.getLatitude());
setLon(partner.getLongitude());
setName(partner.getName());
setDescription(partner.getAddress());
}
// this does nothing...
protected boolean trackwheelClick(int status, int time) {
Dialog.alert("Trackwheel click");
return true;
}
}
这是我要弄清楚的最后一件事,是Touch和Trackwheel听众。任何一个或两个的帮助都会很棒......我已经谷歌干了,到现在谷歌的东西我是某种黑莓粉丝lol
最后的家伙,我希望有人可以帮助我!
(我知道这是可能的,因为它曾经有一个打开详细页面的点击事件,我只是不知道该做什么,甚至不知道我应该寻找什么。)
答案 0 :(得分:1)
我的猜测是,不是处理点击的MapLocation。它由字段处理,它使用MapLocation数据来获取坐标,标签等。我也没有找到合适的钩子。至少能够扩展出现的默认详细信息对话框会很好。