1

のマーカーは、またはデフォルトのマーカーItemizedOverlayを呼び出さない限り、マップに表示されないようです。boundCenter()boundCenterBottom()

これは正しいですか? もしそうなら、それはなぜですか? デフォルトでは (0,0) ポイントがまったく設定されていないため、Android にはマーカーの配置方法がわかりませんか?

アップデート:

Drawable.setBounds() もあることがわかりましたので、このメソッドを呼び出しているboundCenter()と思います。boundCenterBottom()Drawable のどの部分がマップ上のピン ポイントとして使用されるかは、どのように決定されますか?

4

2 に答える 2

3

使用方法のこの例を参照してくださいboundCenter()

boundCenter() 呼び出しが機能するためには、Drawable に固有の幅と高さが必要だと思います。私はそれが次のように機能すると推測しています:

public static Drawable boundCenter(Drawable d)
{
     d.setBounds(d.getIntrinsicWidth() /- 2, d.getIntrinsicHeight() / -2,
                 d.getIntrinsicWidth / 2, d.getIntrinsicHeight() / 2);
     return d;
}

これにより、境界が上/左から下/中央にオフセットされます。

于 2011-04-07T17:14:16.660 に答える
0

BOUNDS を表示するには、何らかの方法で BOUNDS を設定する必要があります。どちらの方法を使用してもかまいませんが、ドローアブルに境界がない場合、その境界は 0,0,0,0 またはそのようなものであり、何も表示されません。

于 2012-04-11T17:30:58.843 に答える