我已经创建了一个透明的操作栏,但缩放控件和“Google”这个词在它后面。我不知道如何调整他们的位置。 Android手机上的默认Google地图应用将它们置于底部操作栏上方。是否可以重新放置缩放控件和单词“Google”?定位Google地图v2放大Android中的控件
我知道你可以启用/与禁用控件:
map.getUiSettings().setZoomControlsEnabled(true);
我已经创建了一个透明的操作栏,但缩放控件和“Google”这个词在它后面。我不知道如何调整他们的位置。 Android手机上的默认Google地图应用将它们置于底部操作栏上方。是否可以重新放置缩放控件和单词“Google”?定位Google地图v2放大Android中的控件
我知道你可以启用/与禁用控件:
map.getUiSettings().setZoomControlsEnabled(true);
您可以用GoogleMap.setPadding()法(2013年9月加入)做到这一点:
map.setPadding(leftPadding, topPadding, rightPadding, bottomPadding);
从API文档:
此方法允许您在地图上定义的可见区域,通过在地图的四个边缘中的每一个上设置填充来向地图发信号通知地图周围的地图部分可能被遮挡。地图功能将适应填充。例如,在变焦控制,指南针,版权声明和谷歌的标志将被移动到适合定义的区域内,摄像机运动将相对于可见光区域的中心等
不幸的是没有办法移动提供与谷歌地图缩放控制您可以禁用它们,并创建自己的自定义缩放控件并将它们放置在地图的顶部。
我认为这会对你有所帮助。我试图实现一个类似的布局,我的解决方案是尝试和隐藏的控制时间间隔为3秒的相机更新。
我认为这是最好的解决方案,而不必实施自定义控件。
mapFragment.setOnCameraChangeListener(new OnCameraChangeListener() {
@Override
public void onCameraChange(CameraPosition position) {
mapFragment.getUiSettings().setZoomControlsEnabled(true);
Timer t = new Timer();
TimerTask tt = new TimerTask() {
@Override
public void run() {
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
mapFragment.getUiSettings().setZoomControlsEnabled(false);
}
});
}
};
t.schedule(tt, 3000);
}
});
这主要是一个概念证明。但它确实有效。
这个问题已经过时,请看Mark Doliners的回答是否正确。 – Warpzit
考虑到这个问题,在2013年回复waaaay ... js – yams