Blackberry OS6: реализация события click для расширенного класса MapLocation - PullRequest
2 голосов
/ 31 марта 2012

Мне нужно изменить то, что происходит, когда пользователь нажимает на пин-код в RichMapField, и эти булавки оказываются объектами MapLocation, эти MapLocations также необязательно обрабатывают другой тип данных, известный как класс «Partner», который содержит идентификатор, адрес , Метка, Широта и Долгота.

Все работает отлично, и как оно стоит в тот момент, когда вы наводите курсор на булавку, оно все еще дает метку и тому подобное, но когда вы нажимаете на булавку, ничего не делает.

Такое поведение ожидается! Так что к этому моменту все прошло отлично.

Похоже, я не могу понять, как прикрепить слушатель щелчка или касания к новому пользовательскому объекту MapLocation.

Вот код без каких-либо дополнительных действий:

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. Справка по одному или обоим была бы удивительной ... Я запустил Google Dry, и теперь Google вещи я своего рода фанат Blackberry LOL

Остроумие, ребята, надеюсь, кто-нибудь может мне помочь!

(Я знаю, что это возможно, поскольку раньше было событие щелчка, открывающее страницу с подробностями, я просто не знаю, что делать или даже то, что я должен искать.)

1 Ответ

1 голос
/ 23 мая 2012

Я предполагаю, что не MapLocation обрабатывает клики.Он обрабатывается полем, которое использует данные MapLocation только для получения координат, метки и т. Д. Мне также не повезло в поиске правильного крючка.Было бы неплохо, по крайней мере, иметь возможность расширять диалоговое окно «Подробности» по умолчанию.

...