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 về chế độ điều khiển và cử chỉ:

Chế độ Lite để giảm thiểu hoạt động 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à lượt tương tác của người dùng ở 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 một 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ể di chuyển hoặc thu phóng bản đồ và các cử chỉ 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ừ mộ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 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 thành phần điều khiển trên 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 chế độ đ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 nút điều khiển thu phóng tích hợp xuất hiện ở góc dưới cùng bên phải của bản đồ. Các tính năng này bị tắt theo mặc định, nhưng có thể được bật bằng cách gọi UiSettings.setZoomControlsEnabled(true).

Chế độ đ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. 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 ngược lại về 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 chế độ hiển thị 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 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ế độ điều khiển bộ 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ấp của riêng mình.

Bộ chọn cấp độ

Thanh công cụ trên 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 khi điểm đánh dấu không còn là trọng tâm nữa.

Thanh công cụ 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 chương trình – hãy xem phần Camera và khung hiển thị để 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 trê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. Các 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 (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 hai ngón tay để giảm mức thu phóng đi 1 (thu nhỏ).
  • Chụm/kéo giãn bằng hai ngón tay
  • Phóng to 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 chế độ 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 đồ rồi áp dụng chuyển động xoay. Bạn có thể tắt chế độ xoay bằng cách gọi UiSettings.setRotateGesturesEnabled(boolean).