Skip to main content

How to change position of MyLocationButton on new Map API v2 - 2

In my previuos post[1], i mention a workaround for changing buttons on Google Map which we use with google services. It is good to know they listen developers and make their products more development friendly. (I hope it goes like that way all the time and all the product lines of Google)

Now we have a method for setting padding of map. It is add padding to useful area of map. We can see full screen map but with padding we can use prefered area of it. It is good for overlay action bar and other things on map view.
[2]

They write a blog and take a video about it. Read blog and watch video if you are using google map in your app :)
[3]

And finally,
They add this method because of this issue. That means, if you find a bug or want extra feature from and api, write to google via this issue tracking system.

[1]
http://blog.kozaxinan.com/2013/08/how-to-change-position-of.html
[2]
https://developers.google.com/maps/documentation/android/map#map_padding
[3]
http://googlegeodevelopers.blogspot.com.au/2013/09/full-screen-maps-and-new-marker.html
[4]
https://code.google.com/p/gmaps-api-issues/issues/detail?id=4670

If you find my blog or apps usefull, please consider donation.


 

Popular posts from this blog

Using Accelerometer when Screen Off

Introduction

Android Phones have a lot of built-in sensor such as gyro, proximity and accelerometer.
Using Accelerometer in Android is a known thing. For listening sensors, class or service needs a SensorEventListener implementation. An Activity is only exists when you are seeing it. When phone enters standby mode, activity which was recently active frozen and restored whenever needed. While this frozen time, activity doesn’t run. Because of that it doesn’t need sensor updates. And Android stop to listen some sensors for power management.

Services have this condition like classes (activity). In contrast to class, a service run every time, even when phone is in standby mode. Therefore Services needs sensor updates for some situations. But android stop to listen some sensor(accelerometer) in some different phones.

There is a solution for that. This is not an exact solution but it work with a lot of phones.

With a BroadcastReceiver listenIntent.ACTION_SCREEN_OFFand register sensor listener a…

How to change position of MyLocationButton on new Map API v2? Explained

When an app use map and design some layout on this map (TextView, Button or image), developer needs to change position of default buttons of map view. (MyLocationButton, ZoomControl or compass...) As far as i know, there are two possible way for changing position of myLocationButton's position.

1- * - Disable it
    * - Create new button programmatically
    * - Add animateCamera(toCurrentLocation) to onClickListener of this button
    * - And place it wherever you want

But if you don't want to write all that there is a hack for that.

2 - * - findViewById() of hardcoded button with;
ZoomControl id =0x1MyLocation button id =0x2      * - And do whatever you want:
// Find map fragment
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);

// Find myLocationButton view
View myLocationButton = mapFragment.getView().findViewById(0x2);

if (myLocationButton != null && myLocationButton.getLayoutParams() instanceof RelativeLayout.…