2012-01-18 31 views
5

Tôi muốn thay đổi kiểu được xác định trước của các điều khiển thu phóng trong ứng dụng của tôi để xuất hiện như các điều khiển thu phóng mới trong ứng dụng bản đồ google. Xem dưới đây:Thay đổi điều khiển thu phóng trong MapView

enter image description here

Làm thế nào tôi có thể làm điều đó? Tôi đã nhìn xung quanh và tôi không tìm thấy gì cả.

Xin cảm ơn trước.

+0

Bạn muốn làm gì chính xác, bạn có thể cung cấp thêm chi tiết? – DuyguK

+0

Tôi muốn biết nếu có bất kỳ cách dễ dàng nào để thay đổi giao diện của các nút thu phóng hay tôi phải tạo các bản vẽ mới và thêm chúng vào dự án, ghi đè người nghe và ... nhưng tôi đoán tôi phải tạo các nút thu phóng của riêng tôi – jalv1039

+0

@ jalv1039: u sẽ nhận được các nút dễ dàng như vậy nếu bạn tìm kiếm trên google, –

Trả lời

5

Bạn nên có bốn drawables hình ảnh cụ thể là:

  1. Phóng to (+) bật/tắt
  2. Thu nhỏ (-) bật/tắt

Đặt chúng trong MapView bố trí một hình ảnh ImageView hoặc Button với hình nền như các hình vẽ ở trên.

Sau đó, bạn nên gán onClickListeners như:

zoomIn.setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     mapView.getController.zoomIn() 
     checkzoom(); 
    } 
}); 

zoomOut.setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     mapView.getController.zoomOut() 
     checkzoom(); 
    } 
}); 

public void checkzoom() { 
    if(mapView.getZoomLevel()==1) // dont know if 0 or 1, just wrote it 
    { 
     zoomOut.setEnabled(false); 
     // or u can change drawable and disable click 
    } 
    if(mapView.getZoomLevel()==18) { 
     zoomIn.setEnabled(false); 
     // or u can change drawable and disable click 
    } 
} 

EDIT: zoom in zoom out

5

tôi giải quyết vấn đề theo cách này: người khuyết tật được xây dựng trong điều khiển zoom (setBuiltInZoomControls(false)), thêm nút riêng tôi tới giao diện người dùng và trình xử lý bổ sung cho các sự kiện nút nhấp chuột.

Các vấn đề liên quan