私は現在、ユーザーが画像にステッカー(帽子、髪の毛、眼鏡など)を追加できるようにするアプリケーションを開発しています。ユーザーはそのステッカーのサイズを変更したり、ステッカーを回転させて移動したりできます。画像を参照してください。
ステッカーを持っていますが、元の画像に貼り付けて移動/回転/拡大して元の画像に合わせるにはどうすればよいですか?
私は現在、ユーザーが画像にステッカー(帽子、髪の毛、眼鏡など)を追加できるようにするアプリケーションを開発しています。ユーザーはそのステッカーのサイズを変更したり、ステッカーを回転させて移動したりできます。画像を参照してください。
ステッカーを持っていますが、元の画像に貼り付けて移動/回転/拡大して元の画像に合わせるにはどうすればよいですか?
あなたはstickerViewのために以下のリンクをチェックすることができます
http://code.google.com/p/android-multitouch-controller/で良い結果が見つかりました。3in1の施設を処理します。マルチタッチでは、画像をパンしたり、画像を拡大縮小したり、同時に画像を回転させたりすることができます。そして、あなたはあなたが望むようにステッカーの数を追加することができます。
画像を拡大/縮小するには、次のコードを試すことができます。
yourImageView.setLayoutParams(new GridView.LayoutParams(newWidthImage, newHeightImage));
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
この助けを願っています。
最初のステップ:このリンク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);
彼らが矢印クリックで画像を引き伸ばす機能を実装しようとしたブログスポットをチェックして、それを削除してください。また、ジェスチャーを使用して画面上で画像を移動することもできます。
ドラッグドロップ画像DragDropImageのデモもご覧ください
ブログに記載されているソースコードをダウンロードすることもできます。