การใช้งาน Event Handler ต่างๆ

SDK จะมีส่งสัญญาณเมื่อมีการกระทำต่างๆ เกิดขึ้นกับแผนที่ผ่านทาง callback ที่นักพัฒนาส่งให้ SDK ตัวอย่างการกระทำเช่น แผนที่ถูกเลื่อน, การคลิกบนแผนที่ หรือ การซูมเข้าและออก

การขยับแผนที่

ldmap.setStatusListener(new IStatusListener() {
    @Override
    public void onScale(float scale) {

    }

    @Override
    public void onMapStatusUpdated(MapLocation location, int zoomLevel, float scale, String action, boolean isUserAction) {

    }
});

ตัวแปร isUserAction ที่ส่งมากับ callback เป็น boolean ที่ใช้บอกว่า แผนที่ขยับเนื่องจากผู้ใช้ลากแผนที่เอง หรือแผนที่ขยับด้วยวิธีอื่นๆ เช่น การใช้คำสั่ง Map.location()

การซูมแผนที่

ldmap.setZoomListener(new IZoomListener() {
    @Override
    public void preZoom(int zoomLevel) {

    }

    @Override
    public void postZoom(int zoomLevel) {

    }

    @Override
    public void finishZoomAnimation(int newZoomLevel) {

    }
});

การคลิก ดับเบิ้ลคลิกและกดค้างบนแผนที่

ldmap.setClickListener(new IClickListener() {
    @Override
    public void onClick(MapLocation location, int action) {

    }

    @Override
    public void onDoubleClick(MapLocation location, int action) {

    }

    @Override
    public void onLongClick(Bundle data) {

    }
});

เมื่อได้รับตำแหน่งปัจจุบันจาก SDK

ldmap.addLocationListener(new ILocationListener() {
    @Override
    public void onGetCurrentLocation(MapLocation currentLocation, Location location) {

    }
});

เมื่อมีการคลิก ดับเบิ้ลคลิกหรือกดค้างที่หมุดที่เกิดจาก Tag

ldmap.setTagListener(new IPinListener() {
    @Override
    public boolean onPinClick(Pin bestChosedPin, Pin[] otherPin) {
        return false;
    }

    @Override
    public boolean onLongClickPin(Pin bestChosedPin, Pin[] otherPin) {
        return false;
    }

    @Override
    public boolean onPinDoubleClick(Pin bestChosedPin, Pin[] otherPin) {
        return false;
    }
});

การคำนวนขนาดของ cache และผลลัพธ์ของการ clear cache

ldmap.setCacheListener(new ICacheListener() {
    @Override
    public void onFinishClearCache(long executionTime) {

    }

    @Override
    public void onFinishCheckCacheSize(long nByte) {

    }
});

การหมุนแผนที่

ldmap.setRotateListener(new IRotateListener() {
    @Override
    public void onRotate(float azimuth) {

    }
});

เมื่อได้รับข้อความ debug ต่างๆ จาก SDK

ldmap.setMessageListener(new IMessageListener() {
    @Override
    public void onMessage(String message) {

    }
});
กลับหน้าหลัก