更改谷歌地图API的“我的位置”按钮的位置

我正在使用Google Maps Android API v2,我需要一种方法来选择“我的位置”按钮的位置。

我得到“我的位置”按钮,如下所示:

GooglePlayServicesUtil.isGooglePlayServicesAvailable(getApplicationContext());
final GoogleMap map = ((SupportMapFragment) getSupportFragmentManager()
        .findFragmentById(R.id.map)).getMap();

// This gets the button
map.setMyLocationEnabled(true);

答案 1

您可以获取“我的位置”按钮并移动它,例如:

public class MapFragment extends SupportMapFragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View mapView = super.onCreateView(inflater, container, savedInstanceState);   

    // Get the button view 
    View locationButton = ((View) mapView.findViewById(1).getParent()).findViewById(2);

    // and next place it, for exemple, on bottom right (as Google Maps app)
    RelativeLayout.LayoutParams rlp = (RelativeLayout.LayoutParams) locationButton.getLayoutParams();
    // position on right bottom
    rlp.addRule(RelativeLayout.ALIGN_PARENT_TOP, 0);
    rlp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, RelativeLayout.TRUE);
    rlp.setMargins(0, 0, 30, 30);
    }
}

答案 2

只需使用GoogleMap.setPadding(左,上,右,下),它允许您指示地图中可能被其他视图遮挡的部分。设置填充将重新定位标准地图控件,相机更新将使用填充区域。

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


推荐