2012-12-23 3 views
0

나는 실내 포지셔닝 프레임 워크 wifislam을 사용하고 프로그래밍 질문이 있습니다. 지금까지 WifiSLAM의 indoorLocationView에서 MapView를 제공했습니다. 다음 코드로 작업하고 있습니다. Android : MapView는 WiFiSLAM의 일부 레이어에서 터치 이벤트에 반응하지 않습니다.

final IndoorLocationManager.Configuration config = new IndoorLocationManager.Configuration(); 
    indoorLocationManager = new IndoorLocationManager(this, config, 
      onServiceConnected, LOCATION_CHOICE); 
    indoorLocationView = indoorLocationManager.createLocationView(this, 
      GOOGLE_MAPS_API_KEY); 

    final View mapContainer = findViewById(R.id.mapcontainer); 
    ((ViewGroup) mapContainer).addView(indoorLocationView.getView()); 
    MapView mapView = indoorLocationView.getGoogleMapView(); 
    List<Overlay> mapOverlays = mapView.getOverlays(); 
    Drawable drawable = this.getResources().getDrawable(R.drawable.pinred); 
    itemizedOverlay = new AddItemizedOverlay(drawable, mapView.getContext(), sm); 
    mapOverlays.add(itemizedOverlay); 

과 AddItemizedOverlay는 다음과 같은 방법이 있습니다

@Override 
public boolean onTap(GeoPoint geopoint, MapView mapView) { 
    mapOverlays.clear(); 
    // geopoint = mapView.getProjection().fromPixels((int) event.getX(), 
    // (int) event.getY()); 
    // latitude 
    if (geopoint != null) { 
     this.geopoint = geopoint; 
     lat = geopoint.getLatitudeE6(); 
     // longitude 
     lon = geopoint.getLongitudeE6(); 
     OverlayItem overlayitem = new OverlayItem(geopoint, 
       "Task Position", "Derzeitige Position vom Task"); 
     this.addOverlay(overlayitem); 
    } 
    return false; 
} 

내 문제가 ONTAP 방법은 응답 또는 장치에 접촉에 반응하지 않는, 지금이다. 또한 onTouch 이벤트는 아무런 반응이 없습니다. wifislam 위의 레이어를 사용하면 MapView에 연결할 수 없다고 생각합니다. 지도에 마커를 추가 할 수 있도록 MapView에 도달 할 가능성이 있습니까?

답변

0

이유는 Google지도보기 상단에 평면도를 보여주는 투명한 화면이 있기 때문입니다. IndoorLocationView # getView에 의해 반환 된 뷰에 리스너를 추가해보십시오.하지만 핀치 줌/패닝 컨트롤이 망가질 수 있습니다. 효과를 다시 확인해야합니다 (마커 중 하나가 탭되지 않은 경우 청취자에게 false를 반환하려는 것).

그래도 작동하지 않는다면, 가장 좋은 방법은 귀하의 필요에 맞게 SDK를 업데이트 할 수 있도록 사용 케이스와 함께 WiFiSLAM 지원팀에 문의하는 것입니다. SDK 웹 사이트의 도움말 섹션에있는 FAQ 항목에 지원 이메일 주소가있는 것 같습니다.

관련 문제