現在表示されている画面の中心座標を取得する方法の例を教えてもらえますか?オブジェクトが常にアクティブビューの中心座標を基準にしているようにします。
DisplayMetrics
を試して、ソリューションを実現できますint mWidth= this.getResources().getDisplayMetrics().widthPixels;
int mHeight= this.getResources().getDisplayMetrics().heightPixels;
これが私が問題を解決した方法です。背景として、ユーザーがマップを目的の場所(マップの中心を示す十字線)に移動すると、ボタンをタップしてマーカーがマップの中心に表示されるボタンがあります。
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");
}
}
}
);
int cx =screenHeight = displaymetrics.heightPixels; int cy = screenWidth = displaymetrics.widthPixels; float finalRadius = (float) Math.sqrt(cx * cx + cy * cy);
オブジェクトの場合、フロートが中心です