如果我使用Marker聚类,如何识别Marker?

时间:2017-12-02 09:43:04

标签: android google-maps-markers google-maps-android-api-2

如果我使用标记聚类,如何识别标记,以及我拥有它的所有onMarkerDragEnd(Marker marker)对象且它没有标记或ID? 在群集之前,我可以将标记或id设置为标记,因为我手动创建它们。我可以通过此ID在DB中找到一个对象,并在拖动标记(onMarkerDragStart)时更改它。现在当我使用群集时,我没有id或tag 而且我无法通过标记位置找到DB中的对象,因为protected void okButton_Click(object sender, EventArgs e) { AgeVerification(); CostOfTickets(); } protected int CustomerAgeCheck() { int age = int.Parse(Cust1AgeTextBox.Text); do { ageVerificationLabel.Text = String.Format("Please enter the correct age"); } while (age < 0 || age > 100); return age; } protected void AgeVerification() { int age = CustomerAgeCheck(); if (Movie3RadioButton.Checked && age < 17) { ageVerificationLabel.Text = String.Format("Access denied - you are too young"); } else if (Movie4RadioButton.Checked || Movie5RadioButton.Checked || Movies6RadioButton.Checked && age < 13) { ageVerificationLabel.Text = String.Format("Access deniad - you are too young"); } else { ageVerificationLabel.Text = String.Format("Enjoy your Movie"); } } protected void CostOfTickets() { int cost; int totalTickets = int.Parse(CustomerDropDownList.SelectedValue); cost = totalTickets * 10; resultLabel.Text = String.Format("Your Total is {0:C}", cost); } 方法给了我错误的位置(因为当我们长按它时标记跳转以帮助我们在手指后面看到它)。 抱歉我的英文。

1 个答案:

答案 0 :(得分:0)

您可以将所有标记及其ID存储在散列图中,并通过调用markerList.get(marker)在任何标记方法上获取其ID。

   private HashMap<Marker, String> markerList = new HashMap<>();
    private GoogleMap mMap; //also instantiate your map 

    private void addMarker(String id, LatLng pos){
        MarkerOptions options = new MarkerOptions();
        options.position(pos);
        options.title("title");
        Marker mapMarker = mMap.addMarker(options);
        markerList.put(mapMarker, id);

    }