n個のオーバーレイを表示するマップアクティビティ。オーバーレイアイコンをタップすると、画面の下部にトーストが表示されますが、タップしているオーバーレイアイコンの近くにトーストを表示したいと思います。
案内してください、よろしくお願いします...
n個のオーバーレイを表示するマップアクティビティ。オーバーレイアイコンをタップすると、画面の下部にトーストが表示されますが、タップしているオーバーレイアイコンの近くにトーストを表示したいと思います。
案内してください、よろしくお願いします...
このコードは、トーストの正確な位置を示しています... このコードは、トーストの正確な重力を示しています..
OverlayItem item = overlayItems_.get(index);
Projection projection = mMapView.getProjection();
Point point = new Point();
projection.toPixels(item.getPoint(), point);
Toast toast = Toast.makeText(mContext, item.getTitle()+" "+item.getSnippet(), Toast.LENGTH_SHORT);
toast.setGravity(Gravity.TOP | Gravity.LEFT, point.x, point.y);
toast.show();
ここで私もポイントを渡します..
トーストの配置
標準のトースト通知が、画面の下部近くに水平方向に中央に表示されます。setGravity(int, int, int)
メソッドでこの位置を変更できます。x-position offset
これは、重力定数、 、および の3 つのパラメータを受け入れますy-position offset
。
たとえば、トーストを左上隅に表示することにした場合は、次のように重力を設定できます。
toast.setGravity(Gravity.TOP|Gravity.LEFT, 0, 0);
位置を右に微調整したい場合は、2 番目のパラメーターの値を増やします。微調整するには、最後のパラメーターの値を増やします。
出典: Google デベロッパー
ここを見てみてください:
setGravity() を使用して Toast メッセージを配置する方法について説明しています。トーストの位置を設定するには、ピンの (x,y) 座標を使用する必要があります。
toast.setGravity(Gravity.TOP, 0, 0);
Gravity.TOP の代わりに、LEFT
またはを使用することもできますRIGHT