有人能举例说明如何获取当前显示屏幕的中心坐标吗?我希望我的对象始终相对于活动视图的中心坐标。
答案 0 :(得分:6)
DisplayMetrics
来实现解决方案int mWidth= this.getResources().getDisplayMetrics().widthPixels;
int mHeight= this.getResources().getDisplayMetrics().heightPixels;
答案 1 :(得分:1)
以下是我解决问题的方法。作为背景,我有一个按钮,一旦用户将地图移动到所需位置(显示地图中心的十字线),他们可以点击按钮,地图中心会出现一个标记。
findViewById(R.id.addMarker).setOnClickListener(
new View.OnClickListener(){
@Override
public void onClick(View view) {
if(myMap != null){
double myLat = myMap.getCameraPosition().target.latitude;
double myLng = myMap.getCameraPosition().target.longitude;
LatLng markerPoint = new LatLng(myLat, myLng);
myMap.addMarker(new MarkerOptions().position(markerPoint)).setTitle("new marker");
}
}
}
);
答案 2 :(得分:1)
int cx =screenHeight = displaymetrics.heightPixels;
int cy = screenWidth = displaymetrics.widthPixels;
float finalRadius = (float) Math.sqrt(cx * cx + cy * cy);
浮动是对象的中心