web-dev-qa-db-ja.com

サイズ変更と回転機能を備えたステッカーを処理する方法は?

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

enter image description here

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

18
Chintan Rathod

http://code.google.com/p/Android-multitouch-controller/ で良い結果が見つかりました。 3 in1の施設を処理します。マルチタッチでは、画像をパンしたり、画像を拡大縮小したり、同時に画像を回転したりすることができます。また、必要に応じてステッカーをいくつでも追加できます。

10
Chintan Rathod
24
Rezaul Karim

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

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

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

1
Damien R.

最初のステップ:このリンク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);
1
Ramani Hitesh

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

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

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

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

0
Sangu