Thao tác và cử chỉ

Chọn nền tảng: Android iOS JavaScript

Bằng cách sử dụng Maps SDK cho Android, bạn có thể tuỳ chỉnh cách người dùng tương tác với bản đồ của mình bằng cách xác định những thành phần giao diện người dùng tích hợp nào xuất hiện trên bản đồ và những cử chỉ nào được phép.

Mã mẫu

Kho lưu trữ ApiDemos trên GitHub có một mẫu minh hoạ cách sử dụng các lựa chọn điều khiển và cử chỉ:

Chế độ Lite để giảm thiểu tương tác của người dùng

Nếu bạn muốn có một bản đồ đơn giản và người dùng tương tác ở mức tối thiểu, hãy cân nhắc sử dụng bản đồ ở chế độ đơn giản. Chế độ thu gọn cung cấp hình ảnh bitmap của bản đồ tại một vị trí và mức thu phóng cụ thể. Ở chế độ thu gọn, người dùng không thể dịch chuyển hoặc thu phóng bản đồ và các cử chỉ sẽ không hoạt động. Để biết thông tin chi tiết, hãy xem hướng dẫn về chế độ đơn giản.

Thành phần điều khiển trên giao diện người dùng

Maps API cung cấp các chế độ kiểm soát giao diện người dùng tích hợp sẵn, tương tự như các chế độ kiểm soát trong ứng dụng Google Maps trên điện thoại Android. Bạn có thể bật/tắt chế độ hiển thị của các chế độ kiểm soát này bằng cách sử dụng lớp UiSettings. Bạn có thể lấy lớp này từ GoogleMap bằng phương thức GoogleMap.getUiSettings. Những thay đổi đối với lớp này sẽ được phản ánh ngay trên bản đồ. Để xem ví dụ về các tính năng này, hãy xem hoạt động minh hoạ Cài đặt giao diện người dùng trong ứng dụng mẫu.

Bạn cũng có thể định cấu hình hầu hết các lựa chọn này khi bản đồ được tạo thông qua các thuộc tính XML hoặc bằng cách sử dụng lớp GoogleMapOptions. Hãy xem phần Định cấu hình trạng thái ban đầu để biết thêm thông tin chi tiết.

Mỗi chế độ kiểm soát giao diện người dùng đều có một vị trí được xác định trước so với cạnh của bản đồ. Bạn có thể di chuyển các nút điều khiển ra khỏi cạnh trên, dưới, trái hoặc phải bằng cách thêm khoảng đệm vào đối tượng GoogleMap.

Chế độ điều khiển thu phóng

Maps API cung cấp các chế độ thu phóng tích hợp sẵn xuất hiện ở góc dưới cùng bên phải của bản đồ. Theo mặc định, các tính năng này sẽ bị tắt, nhưng bạn có thể bật bằng cách gọi UiSettings.setZoomControlsEnabled(true).

Điều khiển thu phóng

La bàn

Maps API cung cấp một hình ảnh la bàn xuất hiện ở góc trên cùng bên trái của bản đồ trong một số trường hợp nhất định. La bàn sẽ chỉ xuất hiện khi camera được định hướng sao cho có phương vị khác 0 hoặc độ nghiêng khác 0. Khi người dùng nhấp vào la bàn, máy ảnh sẽ chuyển động trở lại vị trí có phương vị và độ nghiêng bằng 0 (hướng mặc định) và la bàn sẽ mờ dần ngay sau đó. Bạn có thể tắt hoàn toàn la bàn bằng cách gọi UiSettings.setCompassEnabled(boolean). Tuy nhiên, bạn không thể buộc la bàn luôn xuất hiện.

La bàn

Nút Vị trí của tôi

Nút Vị trí của tôi chỉ xuất hiện ở góc trên cùng bên phải màn hình khi lớp Vị trí của tôi được bật. Để biết thông tin chi tiết, hãy xem hướng dẫn về dữ liệu vị trí.

Nút Vị trí của tôi

Bộ chọn cấp độ

Theo mặc định, bộ chọn tầng (bộ chọn sàn) sẽ xuất hiện gần cạnh giữa bên phải của màn hình khi người dùng đang xem bản đồ trong nhà. Khi có từ 2 bản đồ trong nhà trở lên xuất hiện, bộ chọn tầng sẽ áp dụng cho toà nhà đang được lấy tiêu điểm, thường là toà nhà gần tâm màn hình nhất. Mỗi toà nhà đều có một tầng mặc định sẽ được chọn khi bộ chọn xuất hiện lần đầu. Người dùng có thể chọn một cấp độ khác bằng cách chọn cấp độ đó trong bộ chọn.

Bạn có thể tắt hoặc bật chế độ chọn cấp độ bằng cách gọi GoogleMap.getUiSettings().setIndoorLevelPickerEnabled(boolean).

Điều này sẽ hữu ích nếu bạn muốn thay thế bộ chọn cấp độ mặc định bằng bộ chọn của riêng mình.

Bộ chọn cấp độ

Thanh công cụ của bản đồ

Theo mặc định, một thanh công cụ sẽ xuất hiện ở dưới cùng bên phải của bản đồ khi người dùng nhấn vào một điểm đánh dấu. Thanh công cụ giúp người dùng truy cập nhanh vào ứng dụng di động Google Maps.

Bạn có thể bật và tắt thanh công cụ bằng cách gọi UiSettings.setMapToolbarEnabled(boolean).

Trong bản đồ chế độ thu gọn, thanh công cụ vẫn tồn tại độc lập với các thao tác của người dùng. Trong bản đồ có thể tương tác hoàn toàn, thanh công cụ sẽ trượt vào khi người dùng nhấn vào một điểm đánh dấu và trượt ra lại khi điểm đánh dấu không còn được lấy tiêu điểm nữa.

Thanh công cụ này hiển thị các biểu tượng giúp truy cập vào chế độ xem bản đồ hoặc yêu cầu chỉ đường trong ứng dụng di động Google Maps. Khi người dùng nhấn vào một biểu tượng trên thanh công cụ, API sẽ tạo một intent để chạy hoạt động tương ứng trong ứng dụng di động Google Maps.

Thanh công cụ trên bản đồ

Thanh công cụ xuất hiện ở dưới cùng bên phải của bản đồ trong ảnh chụp màn hình ở trên. Một hoặc cả hai biểu tượng ý định sẽ xuất hiện trên bản đồ, tuỳ thuộc vào nội dung của bản đồ và miễn là ứng dụng di động Google Maps hỗ trợ ý định kết quả.

Cử chỉ trên bản đồ

Bản đồ được tạo bằng Maps SDK cho Android hỗ trợ các cử chỉ tương tự như ứng dụng Google Maps. Tuy nhiên, có thể có những trường hợp bạn muốn tắt một số cử chỉ để duy trì trạng thái của bản đồ. Bạn cũng có thể đặt chế độ thu phóng, xoay, nghiêng và hướng theo cách lập trình – hãy xem phần Camera và Chế độ xem để biết thêm thông tin chi tiết. Xin lưu ý rằng việc tắt cử chỉ không ảnh hưởng đến việc bạn có thể thay đổi vị trí camera theo phương thức lập trình hay không.

Giống như các chế độ điều khiển giao diện người dùng, bạn có thể bật/tắt cử chỉ bằng lớp UiSettings. Lớp này có thể được lấy từ GoogleMap bằng cách gọi GoogleMap.getUiSettings. Những thay đổi được thực hiện trên lớp này sẽ được phản ánh ngay trên bản đồ. Để xem ví dụ về các tính năng này, hãy xem hoạt động minh hoạ Cài đặt giao diện người dùng trong ứng dụng mẫu (xem tại đây để biết cách cài đặt).

Bạn cũng có thể định cấu hình các lựa chọn này khi bản đồ được tạo thông qua Thuộc tính XML hoặc bằng cách sử dụng lớp GoogleMapOptions. Hãy xem phần Định cấu hình bản đồ để biết thêm thông tin chi tiết.

Cử chỉ thu phóng

Bản đồ phản hồi nhiều cử chỉ có thể thay đổi mức thu phóng của camera:

  • Nhấn đúp để tăng mức thu phóng thêm 1 (phóng to).
  • Nhấn bằng 2 ngón tay để giảm mức thu phóng đi 1 (thu nhỏ).
  • Chụm/căng bằng hai ngón tay
  • Thu phóng bằng một ngón tay bằng cách nhấn đúp nhưng không thả ngón tay ở lần nhấn thứ hai, sau đó trượt ngón tay lên để thu nhỏ hoặc xuống để phóng to.

Bạn có thể tắt cử chỉ thu phóng bằng cách gọi UiSettings.setZoomGesturesEnabled(boolean). Việc này sẽ không ảnh hưởng đến việc người dùng có thể sử dụng các nút điều khiển thu phóng để phóng to và thu nhỏ hay không.

Cử chỉ cuộn (di chuyển)

Người dùng có thể di chuyển (xoay) quanh bản đồ bằng cách kéo bản đồ bằng ngón tay. Bạn có thể tắt tính năng cuộn bằng cách gọi UiSettings.setScrollGesturesEnabled(boolean).

Cử chỉ nghiêng

Người dùng có thể nghiêng bản đồ bằng cách đặt hai ngón tay lên bản đồ rồi di chuyển hai ngón tay đó xuống hoặc lên cùng lúc để tăng hoặc giảm góc nghiêng tương ứng. Bạn có thể tắt cử chỉ nghiêng bằng cách gọi UiSettings.setTiltGesturesEnabled(boolean).

Cử chỉ xoay

Người dùng có thể xoay bản đồ bằng cách đặt hai ngón tay lên bản đồ và áp dụng cử chỉ xoay. Bạn có thể tắt chế độ xoay bằng cách gọi UiSettings.setRotateGesturesEnabled(boolean).