19

我目前正在开发一个应用程序,它允许用户在图像上添加贴纸(帽子、头发、眼镜等)。用户可以调整该贴纸的大小,也可以旋转该贴纸并移动。见图片。

在此处输入图像描述

我有贴纸,但如何将它们放在原始图像上并移动/旋转/放大它们以调整原始图像?

4

5 回答 5

10

I found a good result at http://code.google.com/p/android-multitouch-controller/. Which handles 3 in 1 facility. On Multi-Touch, you can pan your image, you can scale your image and at the same time you can also rotate your image. And you can add number of stickers as you want.

于 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

第一步:下载此链接库。 https://github.com/nimengbo/StickerView

第二:(StickerView,BubblePropertyModel,StickerPropertryModel.java 这三个文件粘贴你的项目)。

第三步:在 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

查看他们尝试实现在箭头单击时拉伸图像并删除它的功能的 blogspot,您还可以使用手势在屏幕上移动图像。

拖放图像还可以查看 DragDropImage 的演示

您也可以下载博客中提到的源代码。

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

于 2014-04-07T10:52:50.303 回答