Tech. Forum 개발자들을 위한 정보 공유의 장입니다
닫기

Tech.Forum

onPressEvent 에러

#1
 @Override
    public boolean onPressEvent(ArrayList<TMapMarkerItem> arrayList, ArrayList<TMapPOIItem> arrayList1, TMapPoint tMapPoint, PointF pointF) {

        if(!arrayList.get(0).equals(null)) {
            markerId = arrayList.get(0);
            markerIDPUT = markerId.getID();

            Intent intent = new Intent(this,DetailActivity.class);
            intent.putExtra("markerID",markerIDPUT);
            startActivity(intent);
        }


        return false;
    }

마커 부분 을 터치하면 이상없이 마커 아이디를 가져오고 문제없는데 마커 부분이아닌곳을 터치하면 바로 팅겨버립니다.
뭐가 문제일까요?

0 Likes

#2

안녕하세요.
T map API 운영담당자 입니다.

보내주신 소스를 확인해본 결과 onPressEvent 발생 시 무조건 arrayList의 0번째 인덱스 값을 가져와 null 체크 하신 부분이 에러가 발생하는 원인입니다.

ArrayList arrayList의 값은 마커를 선택했을 때만 값이 반환됩니다.

마커가 아닌 화면을 선택했을 때의 값은 존재하지 않기 때문에 작성하신 조건문에서 문제가 발생하고 있습니다.

이벤트 발생 시 우선적으로 arrayList의 값 체크를 하는 조건을 추가하신 후 진행하시면 문제가 해결 되실 겁니다.

감사합니다.

0 Likes