@sarascript

База данных маркеров Google map?

У меня есть два экрана карты - первый экран видит пользователь и может поставить маркер с нужной для него иконкой, второй экран видит волонтёр, который может ему помочь. Как создать базу данных маркеров с иконками (или если есть другой выход)? Мне нужно сделать так, чтоб все те, кому нужна помощь появлялись на экране волонтёра с той иконкой, что они выбрали.
pickupLocation = new LatLng(lastLocation.getLatitude(), lastLocation.getLongitude());
                AlertDialog.Builder builder = new AlertDialog.Builder(PersonMapActivity.this);
                builder.setTitle("Я нуждаюсь в ");

// add a list
                String[] animals = {"Лекарства", "Продукты", "СИЗ", "Попутка", "Помощь(SOS)"};
                final MarkerOptions markerOptions = new MarkerOptions();
                markerOptions.position(pickupLocation);
                builder.setItems(animals, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        switch (which) {
                            case 0:
                                mMap.clear();
                                markerOptions.title("Лекарства").icon(BitmapDescriptorFactory.fromResource(R.mipmap.medicine));
                                mPersonMarker = FirebaseDatabase.getInstance().getReference().child("Users").child("personRequest").child("Маркер");
                                mPersonMarker.child("personRequest").setValue(markerOptions);
                                mMap.addMarker(markerOptions);
                                break;
                            case 1:
                                mMap.clear();
                                markerOptions.title("Продукты").icon(BitmapDescriptorFactory.fromResource(R.mipmap.diet));
                                mPersonMarker = FirebaseDatabase.getInstance().getReference().child("Users").child("personRequest").child("Маркер");
                                mPersonMarker.child("personRequest").setValue(markerOptions);
                                mMap.addMarker(markerOptions);
                                break;
                            case 2:
                                mMap.clear();
                                markerOptions.title("СИЗ").icon(BitmapDescriptorFactory.fromResource(R.mipmap.oxygen));
                                mPersonMarker = FirebaseDatabase.getInstance().getReference().child("Users").child("personRequest").child("Маркер");
                                mPersonMarker.child("personRequest").setValue(markerOptions);
                                mMap.addMarker(markerOptions);
                                break;
                            case 3:
                                mMap.clear();
                                markerOptions.title("Попутка").icon(BitmapDescriptorFactory.fromResource(R.mipmap.car));
                                mPersonMarker = FirebaseDatabase.getInstance().getReference().child("Users").child("personRequest").child("Маркер");
                                mPersonMarker.child("personRequest").setValue(markerOptions);
                                mMap.addMarker(markerOptions);
                                break;
                            case 4:
                                mMap.clear();
                                markerOptions.title("Помощь(SOS)").icon(BitmapDescriptorFactory.fromResource(R.drawable.help));
                                mPersonMarker = FirebaseDatabase.getInstance().getReference().child("Users").child("personRequest").child("Маркер");
                                mPersonMarker.child("personRequest").setValue(markerOptions);
                                mMap.addMarker(markerOptions);
                                break;
                        }
                    }
                });

// create and show the alert dialog
                AlertDialog dialog = builder.create();
                dialog.show();
            }
        });
    }


Со стороны волонтёра код большой , могу лишь сказать , что нужно как то добавить маркеры в .icon который видит волонтёр.
  • Вопрос задан
  • 86 просмотров
Пригласить эксперта
Ответы на вопрос 2
mayton2019
@mayton2019 Куратор тега Java
Bigdata Engineer
У тебя case выражения такие однообразные.
Код тяготеет к replace condition with polymorphism.
Ответ написан
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Как создать базу данных маркеров с иконками (или если есть другой выход)?
или сделать самому, или заказать на фрилансе.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы