4

画像にフレームを追加する必要があるアプリを作成したい.これを再評価する考えはありません.フレームが画像に追加されるリンクが1つあります.誰か助けてください.

リンクはこちら

@前もって感謝します!!

4

3 に答える 3

8

編集:ギャラリーOnItemClickListener

gallery.setOnItemClickListener(new OnItemClickListener() {
        Bitmap frame = null, out = null;

        @Override
        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                long arg3) {
           Bitmap urImage = BitmapFactory.decodeResource(getResources(),
                    R.drawable.urBackgroundImageID);//edit
            frame = BitmapFactory.decodeResource(getResources(),
                    frames[arg2]);
            out = combineImages(frame, urImage);
            imageView.setImageBitmap(out); //add "out" for ur ImageView
        }
    });

frames[]ドローアブルの配列、つまり異なるフレームです

次の方法では、2つの画像を動的に結合します

public Bitmap combineImages(Bitmap frame, Bitmap image) {

    Bitmap cs = null;
    Bitmap rs = null;

    rs = Bitmap.createScaledBitmap(frame, image.getWidth(),
            image.getHeight(), true);

    cs = Bitmap.createBitmap(rs.getWidth(), rs.getHeight(),
            Bitmap.Config.RGB_565);

    Canvas comboImage = new Canvas(cs);

    comboImage.drawBitmap(image, 0, 0, null);
    comboImage.drawBitmap(rs, 0, 0, null);

    if (rs != null) {
        rs.recycle();
        rs = null;
    }
    Runtime.getRuntime().gc();

    return cs;
}

でさまざまな整数値を試すことができます

comboImage.drawBitmap(image, 0, 0, null);
comboImage.drawBitmap(rs, 0, 0, null);

0画像上で必要なフレーム位置を取得するために配置した場所。

于 2013-03-19T07:03:00.353 に答える
1

多くの方法があります。非常に簡単な方法は、ビューの onDraw メソッドで画像の上にカスタム フレームを描画してから、ビットマップでビューを描画することです。フレームピクセルデータを画像ピクセルデータに書き込み、新しい画像をフレームと組み合わせる別の方法があります。openCVまたは他の3番目のライブラリを使用して画像をデコードできます。

于 2013-03-19T06:57:33.363 に答える
-5
 <FrameLayout
         android:id="@+id/frame"
         android:layout_width="120dp"
        android:layout_height="120dp"
        android:foreground="@drawable/your frame...">

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:layout_margin="10dp"
        android:layout_gravity="center"
        android:src="@drawable/ic_launcher" />
    </FrameLayout>
于 2013-12-19T04:45:28.563 に答える