사용자가 지도와 상호작용할 수 있도록 지원

다음 템플릿을 사용하는 경우 사용자가 확대/축소하고 화면을 이동하여 지도의 여러 부분을 보는 등의 상호작용을 할 수 있도록 지원을 추가할 수 있습니다.

템플릿 자동차 앱 API 수준 지원
NavigationTemplate 2

PlaceListNavigationTemplate

(지원 중단됨)

4

RoutePreviewNavigationTemplate

(지원 중단됨)

4

MapTemplate

(지원 중단됨)

5 (템플릿 도입)
MapWithContentTemplate 7 (템플릿 도입)

상호작용 콜백 구현

SurfaceCallback 인터페이스에는 앞 섹션의 템플릿으로 빌드된 지도에 상호작용을 추가하기 위해 구현할 수 있는 여러 콜백 메서드가 있습니다.

상호작용 메서드 자동차 앱 API 수준 지원
onClick 5
손가락 모으기(확대/축소) onScale 2
원터치 드래그 onScroll 2
원터치 플링 onFling 2
두 번 탭

onScale

(템플릿 호스트가 배율 결정)

2
화면 이동 모드에서 로터리 이동

onScroll

(템플릿 호스트가 거리 요소를 결정함)

2

지도 작업 스트립 추가

이러한 템플릿은 확대/축소, 중심 재설정, 나침반 표시 또는 앱에서 표시하도록 선택할 수 있는 다른 작업과 같은 지도 관련 작업을 위해 지도 작업 스트립을 가질 수 있습니다. 지도 작업 스트립은 작업 깊이에 영향을 주지 않고 새로고침할 수 있는 아이콘 전용 버튼을 최대 네 개까지 가질 수 있습니다. 작업 스트립은 유휴 상태일 때 숨겨지고 활성 상태일 때 다시 표시됩니다.

지도 상호작용 콜백을 수신하려면 지도 작업 스트립에 Action.PAN 버튼을 추가해야 합니다. 사용자가 화면 이동 버튼을 누르면 호스트가 화면 이동 모드 이해하기에 설명된 대로 화면 이동 모드로 전환됩니다.

앱이 지도 작업 스트립에서 Action.PAN 버튼을 생략하면 SurfaceCallback 메서드로부터 사용자 입력을 수신하지 않게 되고 호스트는 이전에 활성화된 화면 이동 모드를 닫습니다.

터치 스크린에는 화면 이동 버튼이 표시되지 않습니다.

화면 이동 모드 이해하기

화면 이동 모드에서는 템플릿 호스트가 터치 입력을 사용하지 않는 기기(예: 로터리 컨트롤러, 터치패드)의 사용자 입력을 적절한 SurfaceCallback 메서드로 변환합니다. 사용자 작업에 관한 응답으로 NavigationTemplate.BuildersetPanModeListener 메서드를 사용하여 화면 이동 모드에 진입하거나 화면 이동 모드를 종료합니다. 사용자가 화면 이동 모드에 있는 동안 호스트는 템플릿에서 다른 UI 구성요소를 숨길 수 있습니다.