Fling a button?

OK, think Tinder, with all of the swiping left and swiping right. Except, every time a person swipes, the words on the screen change instead of the picture.

I have found:
I can change words of buttons, but I cannot fling them.
I can fling a sprite or a canvas, but I cannot put words on them.

Ideas?

Thank you!
Heather

Hello Heather

Any component that accepts the live input of text cannot be swiped as that would trigger the input event. So you can't use a TextBox for the words but you can use a Label (You can use a sprite too, if the words are predefined, they can be written on an image).

If not using a Canvas and sprites, you will need a gesture extension:

Hi Chris,
Thanks so much. The words are predefined, the user moving the button (or whatever) should cause the words to change. I am concerned about using words on a sprite, I couldn't find a good way to change them based on a trigger.
Any extra wisdom?
Heather

...simply replace the sprite with another.

Hi Chris,
Aah, there's the problem. There would be literally hundreds of sprites if I made a separate one for each set of words, which is why I was using a button and then just changing the words on the button.
Is there a way to put words directly on the canvas so that I can then change them?
Any other ideas?
I truly appreciate your input!
Heather

..... right, so it's back to a text label (multiline) + gesture extension. On swipe, change the text in the label (from a text list, which could then be random if required).

Or have the label above a canvas, swipe the canvas to change the label text?

Other Avenues:

  1. Using the App Inventor Scroll Arrangement
  2. Using the App Inventor Web Viewer (no internet required)

you can have only one sprite, you only have to change the underlying picture...
see the picture property Drawing and Animation

see also How to Swipe left/right and top/bottom to trigger something

Taifun


Trying to push the limits! Snippets, Tutorials and Extensions from Pura Vida Apps by icon24 Taifun.

component_method

To change the words later, first erase them by drawing a fat line through them with ink color set to the background color.
Then reset the ink color to black and draw the new text.