19

私は現在、ユーザーが画像にステッカー(帽子、髪の毛、眼鏡など)を追加できるようにするアプリケーションを開発しています。ユーザーはそのステッカーのサイズを変更したり、ステッカーを回転させて移動したりできます。画像を参照してください。

ここに画像の説明を入力してください

ステッカーを持っていますが、元の画像に貼り付けて移動/回転/拡大して元の画像に合わせるにはどうすればよいですか?

4

5 に答える 5

10

http://code.google.com/p/android-multitouch-controller/で良い結果が見つかりました。3in1の施設を処理します。マルチタッチでは、画像をパンしたり、画像を拡大縮小したり、同時に画像を回転させたりすることができます。そして、あなたはあなたが望むようにステッカーの数を追加することができます。

于 2013-03-28T09:07:09.757 に答える
1

画像を拡大/縮小するには、次のコードを試すことができます。

yourImageView.setLayoutParams(new GridView.LayoutParams(newWidthImage, newHeightImage));
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);

この助けを願っています。

于 2013-03-18T11:43:40.007 に答える
1

最初のステップ:このリンクLibをダウンロードします。 https://github.com/nimengbo/StickerView

2番目:(この3つのファイルのStickerView、BubblePropertyModel、StickerPropertryModel.javaでプロジェクトを貼り付けます)。

3番目のステップ:MainActivityファイルを過ぎたコードの下:

注:mainlayoutは(Relativelayoutオブジェクト)です

 final StickerView stickerView21 = new StickerView(this);
            stickerView21.setImageResource(R.drawable.fall_9);

            stickerView21.setOperationListener(new  StickerView.OperationListener() {
                @Override
                public void onDeleteClick() {
                    mViews.remove(stickerView21);
                    mainLayout.removeView(stickerView21);
                }

                @Override
                public void onEdit(StickerView stickerView)
                {

                }

                @Override
                public void onTop(StickerView stickerView) {
                    int position = mViews.indexOf(stickerView);
                    if (position == mViews.size() - 1) {
                        return;
                    }
                    StickerView stickerTemp = (StickerView) mViews.remove(position);

                    mViews.add(mViews.size(), stickerTemp);
                }
            });


            RelativeLayout.LayoutParams l11= new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.MATCH_PARENT);
            mainLayout.addView(stickerView21, l11);
            mViews.add(stickerView21);
于 2017-08-03T04:40:57.103 に答える
0

彼らが矢印クリックで画像を引き伸ばす機能を実装しようとしたブログスポットをチェックして、それを削除してください。また、ジェスチャーを使用して画面上で画像を移動することもできます。

ドラッグドロップ画像DragDropImageのデモもご覧ください

ブログに記載されているソースコードをダウンロードすることもできます。

https://stackoverflow.com/a/22908379/3034199

于 2014-04-07T10:52:50.303 に答える