3

n個のオーバーレイを表示するマップアクティビティ。オーバーレイアイコンをタップすると、画面の下部にトーストが表示されますが、タップしているオーバーレイアイコンの近くにトーストを表示したいと思います。

案内してください、よろしくお願いします...

4

4 に答える 4

5

このコードは、トーストの正確な位置を示しています... このコードは、トーストの正確な重力を示しています..

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();

ここで私もポイントを渡します..

于 2012-05-28T05:40:15.577 に答える
1

トーストの配置

標準のトースト通知が、画面の下部近くに水平方向に中央に表示されます。setGravity(int, int, int)メソッドでこの位置を変更できます。x-position offsetこれは、重力定数、 、および の3 つのパラメータを受け入れますy-position offset

たとえば、トーストを左上隅に表示することにした場合は、次のように重力を設定できます。

toast.setGravity(Gravity.TOP|Gravity.LEFT, 0, 0);

位置を右に微調整したい場合は、2 番目のパラメーターの値を増やします。微調整するには、最後のパラメーターの値を増やします。

出典: Google デベロッパー

于 2012-05-25T15:13:53.837 に答える
1

ここを見てみてください:

AndroidでToastの位置を変更するには?

setGravity() を使用して Toast メッセージを配置する方法について説明しています。トーストの位置を設定するには、ピンの (x,y) 座標を使用する必要があります。

于 2012-05-25T15:08:39.970 に答える
0
toast.setGravity(Gravity.TOP, 0, 0);

Gravity.TOP の代わりに、LEFTまたはを使用することもできますRIGHT

于 2012-05-25T15:34:34.920 に答える