0

私は2つの画像を持っています。クライアントから取得する座標を決定することにより、ある画像を別の画像に配置したいと考えています。具体的には、インターネットから最初の画像の座標を取得し、これらの座標に従ってこの画像を別の画像に配置したいと考えています。私はすでにこれらの画像を同じ線形レイアウトに配置しましたが、座標を指定して最初の画像を 2 番目に配置することができませんでした。1 つの画像を配置するために、次のコード部分も使用しました。

        ImageView iv = FindViewById<ImageView>(Resource.Id.imageView1);
        iv.SetImageResource(Resource.Drawable.Icon);

        LinearLayout ll = FindViewById<LinearLayout>(Resource.Id.linearLayout1);

        LinearLayout ly = new LinearLayout(this);

        LinearLayout.LayoutParams p = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WrapContent, LinearLayout.LayoutParams.WrapContent, 0.0f);
        p.SetMargins(20, 20, 60, 60);

        ll.AddView(iv,p);

しかし、プログラムは失敗しました ll.AddView(iv,p); 部。この問題を解決してください。

4

1 に答える 1

0

ビットマップを使用する場合は、これでうまくいくはずです

Bitmap mutableBitmap = originalImageBitmap.copy(Bitmap.Config.ARGB_8888, true);
Canvas canvas = new Canvas(mutableBitmap);
canvas.drawBitmap(overlayBitmap, null, new RectF(left, top, right, bottom), null);

これで元の画像がビットマップになりました。編集可能な可変ビットマップを作成し、可変ビットマップからキャンバスを作成し、RectFオーバーレイ ビットマップの描画パラメータを指定します。次に、2 番目のビットマップを最初のビットマップにペイントし、可変ビットマップを設定します。ImageView

于 2013-03-15T10:23:03.140 に答える