Я получаю эту ошибку в последнем переопределении.
Я действительно не знаю, что мне нужно вернуть, поэтому, пожалуйста, помогите мне.
public class MapsActivity extends FragmentActivity implements OnMapReadyCallback,GoogleMap.OnMarkerClickListener {
private GoogleMap mMap;
private Marker myMarker;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
LatLng MORNAR = new LatLng(43.5201139, 16.4282208);
googleMap.setOnMarkerClickListener(this);
mMap.addMarker(new MarkerOptions().position(MORNAR).title("Stari mornar"));
mMap.moveCamera(CameraUpdateFactory.newLatLng(MORNAR));
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(MORNAR, 13));
}
@Override
public boolean onMarkerClick(final Marker marker) {
String name= marker.getTitle();
if (name.equalsIgnoreCase("Stari mornar"))
{
openActivity3();
}
}
public void openActivity3(){
Intent intent = new Intent(this, Main2Activity.class);
startActivity(intent);
}
}
Измените прослушиватель кликов производителя на этот
@Override
public boolean onMarkerClick(final Marker marker) {
String name= marker.getTitle();
if (name.equalsIgnoreCase("Stari mornar"))
{
openActivity3();
return true;
}
return false;
}
Здесь метод показывает, что он возвращает логическое значение.
Таким образом, если вы щелкнете маркер и функция вернет true, это означает, что событие click прошло успешно, и если оно вернет false, окна информации будут отображаться как обычно.
В последнем методе переопределения (onMapReady (Marker)) вам необходимо вернуть логическое значение, поскольку оно является обязательным.
@Override
public boolean onMarkerClick(final Marker marker) {
String name= marker.getTitle();
if (name.equalsIgnoreCase("Stari mornar"))
{
openActivity3();
}
// return true or false
}
Если вы вернете true, это означает, что вы нажали на маркер.
После средства обеспечения конфиденциальности вашей функции ("public") у вас есть возвращаемый тип, который в данном случае является логическим.