Home » Android » scale – Custom textview with rotate, zoom in,zoom out and move on touch in android?

scale – Custom textview with rotate, zoom in,zoom out and move on touch in android?

Posted by: admin June 15, 2020 Leave a comment

Questions:

Any buddy have Custom Text View with Rotate, Zoom In, Zoom Out & Move functionality like MutiTouch Image View like this http://judepereira.com/blog/multi-touch-in-android-translate-scale-and-rotate/ in android?
I Want exactly like this screen shots.
1. In that screen draw simple text.
2. In that screen when i zoom this view Text auto wrap.
3. In that screen Move Text on view.
4. In that screen Rotate Text.
This all functionality do on TextView touch.

draw simple text

zoom this view Text auto wrapMove Text on viewRotate Text

How to&Answers:

I used https://github.com/jcmore2/Collage to achieve a rotated textview

but i changed the whole code since the plugin works with images
CardView extends ImageView
i chnaged to MyCardView extends RelativeLayout then removed all the code related to images
and instead of using collage.createCollageResources(listRes);
i created my own function in my own CollageView class

public void createCollage(List<MyCardView> list) {
    for (MyCardView layout : list) {
        addCard(layout);
    }
}

Now in the Activity you can add to the collageview a complete RelativeLayout with it’s children not just images

this also will allow dealing with single view or multiple .. TextView or any thing else .. finally this will make the view not just rotated but dragged and zoomed with multi touch gesture.

enter image description here

enter image description here

Answer:

Yes you can create it see below image and follow Here.

ImageView: To add ImageView

    // add a stickerImage to canvas
    StickerImageView iv_sticker = new StickerImageView(MainActivity.this);
    iv_sticker.setImageDrawable(getResources().getDrawable(R.drawable.c10));
    canvas.addView(iv_sticker);

TextView: To add TextView

    // add a stickerText to canvas
    StickerTextView tv_sticker = new StickerTextView(MainActivity.this);
    tv_sticker.setText("nkDroid");
    canvas.addView(tv_sticker);

However, build this did an awesome job.

enter image description here