Mit "App Inventor" Text auf Canvas darstellen..

L

linuxer7

Fortgeschrittenes Mitglied
1
Hallo Leute

Ich habe ein kleines Programm geschrieben auf deren Hintergrund (Canvas) ein Bild dargestellt ist. Auf diesem Hintergrund möchte ich jetzt einen text unterbringen. Da ich über Canvas keinen Label, oder Button legen kann habe ich die Buttons mit ImageSprite realisiert. Das funktioniert soweit alles Prima, aber wie schaffe ich jetzt einen sich verändernden Text, z.b eine Sekundenanzeige darzustellen?

Trotz Stundenlanger Suche und ansehen unzähliger Tutorials bin ich leider noch nicht dahinter gestiegen wie sowas realisiert wird.

Irgendwer ne Idee?
Wie gesagt es geht hier um App Inventor. :)

Gruß
Thomas
 
Du brauchst einen Timer der tickert.

1) Auflösung auf 1 sec stellen
2) im Tick Event deinen Text updaten
3) beim onPause den Timer anhalten (sonst frisst du den Akku leer)
4) beim onResule den Timer neu starten
 
  • Danke
Reaktionen: linuxer7
Im ImageSprite direkt kannst du keinen Text anzeigen (nur auf dem Canvas).
Du könntest höchstens verschiedene Bilder mit verschiedenen Zahlen als .png abspeichern, und dann bei Bedarf (z.B. mit dem angesprochenen Timer) das Bild des ImageSprite dynamisch austauschen. Das klappt recht gut, und auch ziemlich schnell.
 
  • Danke
Reaktionen: linuxer7
@Monsti
Äh, sorry aber ich stehe etwas auf dem schlauch. Könntest du mir bitte einen screenshot schicken wie du das meinst?

Ich habe keine Ahnung was Du mir sagst, sorry aber ich bin noch Anfänger :)

Timer ist klar.

2) im Tick Event deinen Text updaten
Wo und mit was (Label,Sprit) soll ich den Text updaten.

3) beim onPause den Timer anhalten (sonst frisst du den Akku leer)
Was ist onpause?

4) beim onResule den Timer neu starten
Was ist onResule ?

Sei mir nicht böse, aber wie gesagt ich bin noch dabei das ganze System zu verstehen. :confused2:


@1907
Der Tip ist nicht schlecht, Danke. Mal sehen wie ich das am einfachsten realisiere.

Gruß
Thomas
 
linuxer7 schrieb:
@Monsti
3) beim onPause den Timer anhalten (sonst frisst du den Akku leer)
Was ist onpause?

4) beim onResule den Timer neu starten
Was ist onResule ?

Der Void onPause wird aufgerufen, sobald deine Activity in den Hintergrund tritt, z.B wenn du den HomeButton drückst oder eine neue Activity startest.

onResume wird aufgerufen, wenn die pausierte Activity wieder in den Vordergrund gerät .
Gruß
xilent
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: linuxer7
Super Danke Leute,

werde ich mich einlesen. :thumbsup:

Eine Frage habe ich allerdings Momentan" noch ..
Kann ich Blöcke aus einem "test-projekt" in ein vorhandenes kopieren/verschieben ?


Gruß
Thomas
 
wie wärs denn mal mit einem Blick in die Dokumentation?

DrawText(text text, number x, number y)
Draws the specified text relative to the specified coordinates using the values of the FontSize and TextAlignment properties.

DrawTextAtAngle(text text, number x, number y, number angle)
Draws the specified text starting at the specified coordinates at the specified angle using the values of the FontSize and TextAlignment properties.

Kann ich Blöcke aus einem "test-projekt" in ein vorhandenes kopieren/verschieben ?
nein, du kannst nur komplette Screens kopieren
 
Dokumentation, gute Idee :)
Sorry aber auf das naheliegende kommt man immer zu Letzt. Ich habe mich so auf die Tutorial gestürzt, das die Doku unterging.
Danke für den Tipp.
 

Ähnliche Themen

R
  • Robby1950
2
Antworten
23
Aufrufe
1.022
Robby1950
R
B
Antworten
4
Aufrufe
494
bb321
B
Manny87
  • Manny87
Antworten
11
Aufrufe
166
swa00
swa00
Zurück
Oben Unten