2017-07-17 7 views
0

マップ用のビットマップサムネイルがありますが、マップマーカーを中央に追加したいのですが、苦労しています。私は2つのビットマップをオーバーレイすることができましたが、前のものはかなり小さく、中央にはありません。ビットマップを中心にしてスケールアップする方法はありますか?これは、次のようになります。オーバーレイされた描画可能アイコンをビットマップに配置する方法

enter image description here

私はこのAndroid: How to overlay-a-bitmap/draw-over a bitmap?を見て、それが助けたが、マップマーカーが非常に小さく、オフ中心です。おかげで

+0

からビットマップを取得するプロセスである:ここではそれが行きますビットマップを描画し、2番目の子のレイアウトの重心を中心に設定し、オーバーレイアイコンを描画するように設定すると、必要なものが正確に収穫されます。 – Techfist

+0

@T写真のような種類の添付ファイルがあるので、それらのすべてにピンが必要なわけではありません。また、私は2つのビットマップの追加についていくつかの進歩を遂げたので、質問の説明を編集しました。私は変更のために謝罪します – frog4

+0

あなたが添付されたイメージを見ることができません、再度それを付けてみてください。 – Techfist

答えて

0

更新:

私はこのように解決しました。私は将来的にそれを必要とする人のために私のソリューションを残します。

public static Bitmap overlay(Bitmap bmp1, Bitmap bmp2) { 
    Bitmap resizedBitmap = Bitmap.createScaledBitmap(bmp2, 500, 500, false); 
    Bitmap bitmapWithOverlay = Bitmap.createBitmap(bmp1.getWidth(), bmp1.getHeight(), bmp1.getConfig()); 
    Canvas canvas = new Canvas(bitmapWithOverlay); 

    canvas.drawBitmap(bmp1, new Matrix(), null); 
    canvas.drawBitmap(resizedBitmap, ((bmp1.getWidth()/2)-250), ((bmp1.getHeight()/2)-450), null); 

    return bitmapWithOverlay; 
} 

を、ここでなぜあなたはユーザーでframeLayout、2つの子(ImageViewのは)最初の子を聞かせていレイアウトを聞かせていない描画可能

 Bitmap icon = BitmapFactory.decodeResource(getActivity().getBaseContext().getResources(), 
      R.drawable.your_icon); 
1

同じFrameLayoutに置くことができます。 FrameLayoutは1つの子しか持たないようにビルドされています。これはタイです。

また、より多くの子供をFrameLayoutに入れることは悪いことではありません。

関連する問題