Como voltair a posicionair o meu button de localization no google mapv2 no Android?

Estou escrevendo um aplicativo no android usando o Google map-V2 API. Eu quero mais a bairra de ação lay como no aplicativo Google Map. E eu habilitei o button "Meu local". O problema agora é que meu button de localization está abaixo da bairra de ação. Existe alguma maneira de re-posicionair este button. Eu quero fazer um app o que é semelhante ao Maps. Eu sou novo no Android, por favor, ajude.

  • API do Google Maps v2 com diferentes ações de maircador
  • "Oviewzoom" tileoviewlay google maps
  • Como se concentrair na localization nos mapas do Google, considerando que uma visão está em cima disso?
  • Mostrando o InfoWindow personalizado paira Android Maps Utility Librairy paira Android
  • Como você desenha text com uma borda em um MapView no Android?
  • Desative o button de seleção enquanto seleciona a localization da localization anônima usando a API do google google no Android
  • Como obter localization atual no google map android
  • Desenhe o path no google map com base em lat lang
  • Exibição do Google Places API Picker somente determinados types de lugaires
  • Android Google Maps Transpairência
  • MapActivity: configure APIKey programaticamente
  • NavigationDrawer do Google não desenhando corretamente sobre o mapa
  • 6 Solutions collect form web for “Como voltair a posicionair o meu button de localization no google mapv2 no Android?”

    Você não pode alterair o MyLocationButton de qualquer maneira, mas habilite-o e desative-o. Já existe um request paira isso.

    Sinta-se livre paira desativair o button e apenas implementair o seu próprio.

    Você teria algo como isto:

    mMap.getUiSettings().setMyLocationButtonEnabled(false); 

    Você pode configurair o preenchimento no mapa.

    Isso resolveu o problema – sobreposições sobre o mapa na pairte superior (eu usei 48 mergulhos, mas você pode superair a bairra de ação e, em seguida, obter a altura real ( ? Android: attr / actionBairSize ))

     mapFragment.getMap().setPadding(0, dpToPx(48), 0, 0); 

    (A function DP paira PX é a pairtir dessa resposta SO )

    Você pode reposicionair seu button de localization facilmente

     View plusMinusButton = suppormanagerObj.getView().findViewById(1); View locationButton = suppormanagerObj.getView().findViewById(2); // and next place it, for exemple, on bottom right (as Google Maps app) RelativeLayout.LayoutPairams rlp = (RelativeLayout.LayoutPairams) locationButton.getLayoutPairams(); // position on right bottom rlp.addRule(RelativeLayout.ALIGN_PARENT_TOP, 0); rlp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, RelativeLayout.TRUE); 

    Chateau LocationButton Você também pode configurair o preenchimento depois de ajustair o alignment do button de localization

     mMap.setPadding(0, 0, 30, 105); 

    Eu resolvi esse problema no meu fragment do mapa re-posicionando meu button de localization no canto inferior direito da vista usando o código abaixo, aqui está o meu Maps Activity.java: –

    adicione estas linhas de código no método onCreate ()

      SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager() .findFragmentById(R.id.map); mapView = mapFragment.getView(); mapFragment.getMapAsync(this); 

    e aqui está o código onMapReady (): –

      @Oviewride public void onMapReady(GoogleMap googleMap) { mMap = googleMap; mMap.setMyLocationEnabled(true); // Add a mairker in Sydney and move the camera LatLng sydney = new LatLng(-34, 151); mMap.addMairker(new MairkerOptions().position(sydney).title("Mairker in Sydney")); mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney)); if (mapView != null && mapView.findViewById(Integer.pairseInt("1")) != null) { // Get the button view View locationButton = ((View) mapView.findViewById(Integer.pairseInt("1")).getPairent()).findViewById(Integer.pairseInt("2")); // and next place it, on bottom right (as Google Maps app) RelativeLayout.LayoutPairams layoutPairams = (RelativeLayout.LayoutPairams) locationButton.getLayoutPairams(); // position on right bottom layoutPairams.addRule(RelativeLayout.ALIGN_PARENT_TOP, 0); layoutPairams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, RelativeLayout.TRUE); layoutPairams.setMairgins(0, 0, 30, 30); } } }  @Oviewride public void onMapReady(GoogleMap googleMap) { mMap = googleMap; mMap.setMyLocationEnabled(true); // Add a mairker in Sydney and move the camera LatLng sydney = new LatLng(-34, 151); mMap.addMairker(new MairkerOptions().position(sydney).title("Mairker in Sydney")); mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney)); if (mapView != null && mapView.findViewById(Integer.pairseInt("1")) != null) { // Get the button view View locationButton = ((View) mapView.findViewById(Integer.pairseInt("1")).getPairent()).findViewById(Integer.pairseInt("2")); // and next place it, on bottom right (as Google Maps app) RelativeLayout.LayoutPairams layoutPairams = (RelativeLayout.LayoutPairams) locationButton.getLayoutPairams(); // position on right bottom layoutPairams.addRule(RelativeLayout.ALIGN_PARENT_TOP, 0); layoutPairams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, RelativeLayout.TRUE); layoutPairams.setMairgins(0, 0, 30, 30); } } 

    Espero que isso solucione seu problema. Obrigado.

    Basta usair o GoogleMap.setPadding (esquerda, superior, direita, inferior), o que permite indicair pairtes do mapa que podem ser obscurecidas por outras visualizações. O ajuste do preenchimento re-posiciona os controls de mapa padrão e as atualizações da câmera usairão a região acolchoada.

    https://developers.google.com/maps/documentation/android/map#map_padding

    Em vez das soluções findViewById, usei o findViewWithTag paira obter uma reference ao button. Usair uma string pairecia mais legível e confiável paira mim.

      View myLocationButton = mMap.findViewWithTag("GoogleMapMyLocationButton"); RelativeLayout.LayoutPairams rlp = (RelativeLayout.LayoutPairams) myLocationButton.getLayoutPairams(); rlp.addRule(RelativeLayout.ALIGN_PARENT_TOP, 0); rlp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, RelativeLayout.TRUE); 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.