2017-08-17 10 views
0

私はアンドロイドアプリでHereMapを使用しています。マップ上にマーカーをプロットすることはできますが、マーカーの横にテキストを表示することはできません。すでにsetTitleとMapLabeledMarkerを使ってみましたが、これらは動作していないようです。 HereMap Android sdkのマップ上にプロットされたマーカーの横にテキストを表示するにはどうすればよいですか?Here-Map Android sdkのマーカーの横にテキストを表示します。

答えて

1

これを実装する最善の方法は、通常のアンドロイドビューレイアウトを使用し、それを膨張させ、キャンバスAPI経由でビットマップに描画することです。必要に応じて、ビットマップをマーカーのイメージとして使用します。

グラフィックスカードが提供するビットマップをキャッシュし、ハードウェアアクセラレーションを使用してレンダリングするので、パフォーマンスが最適になります。

+0

私はこのように実装し、それは働いた。しかし、このアプローチの問題はマーカーが大きすぎることになります。特定の位置をピンポイントでピン画像を使用していたとしたら、マーカー自体が大きすぎて位置をピンポイントすることはできません。これに対処するすべてのソリューションは高く評価されていますか? –

+0

私はこの問題を理解していません。大きすぎるとはどういう意味ですか?画像の幅と高さは、ビットマップ方式を使用して変更できます。 – Teriblus

+0

マーカーの横にテキストを追加する前に、マーカーが特定の場所を指していて、使用される画像は次のようなものです[https://lh4.ggpht.com/Tr5sntMif9qOPrKV_UVl7K8A_V3xQDgA7Sw_qweLUFlg76d_vGFA7q1xIKZ6IcmeGqg=w300)。テキストを追加すると、マーカー画像全体が約100dpの幅になり、もはや正確に位置を正確に突き止めることができなくなります。画像のピンポイントは、現在位置を指し示すビットマップ(画像+テキスト)の中間点であるため、ズームインまたはズームアウトすると移動します。私が期待しているのは、テキストの長さにかかわらず、画像だけが自分の場所を指していることです。私はそれが私の問題を明確にすることを望む。 –

1

MapLabeledMarkerは機能していますが、レンダリングに十分な制御を提供していないと、時々テキストが

私は追加することによって、この問題をadressingよ(他のマーカー、道路要素などを介して)何らかの理由で隠されています2つのマーカー、1つは画像用、もう1つはテキスト用です。私はandroid.graphics.Paintを使用してビットマップにテキストを描画しています。

これはおそらくDavid Leongソリューションよりもパフォーマンスが悪いですが、MapObject.setVisibleMaskメソッドを使用して、ズームレベルを下げるためにテキストを非表示にする方法を提供します。

+0

私もこの方法でやろうとします。たぶん、私がDavidによって与えられた他の解決策で対処した問題は、このアプローチで克服することができます。 –

関連する問題