当我旋转地图时,会出现指南针。但是我的一个按钮与指南针重叠......我想知道是否有一种方法可以检测到它,这样我就可以在指南针显示时隐藏我的按钮。提前致谢!
编辑:我的问题早些时候误导了抱歉,我实际上希望按钮在用户实际旋转/倾斜地图时消失,并且一旦用户的手离开屏幕,它应该重新出现。
@MaciejGórski 的使用建议CameraPosition.bearing != 0 || CameraPosition.tilt != 0
对我来说是一大步,我尝试了以下实现,但后来我意识到,OnCameraChangeListener
一旦用户开始旋转/倾斜地图,它就不会触发,所以它不会按预期工作。
public OnCameraChangeListener getCameraChangeListener() {
return new OnCameraChangeListener() {
@Override
public void onCameraChange(CameraPosition position) {
// when compass show hide option button
if (optionButton.getVisibility() == LinearLayout.VISIBLE
&& (position.bearing != 0 || position.tilt != 0)) {
optionButton.setVisibility(LinearLayout.GONE);
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
//wait 1 sec and show the button again
optionButton.setVisibility(LinearLayout.VISIBLE);
}
}, 1000);
}
}
};
}