Transparenter Canvas

M

manu

Erfahrenes Mitglied
29
Guten Abend,
man kann in der Manifest.xml angeben, dass die Anwendung einen transparenten Hintergrund hat. Das funktioniert mit einer main.xml auch perfekt. Aber sobald ich in diese main.xml mein eigenes Canvas reinlege oder das Canvas direkt mit "setContentView" anspreche, ist die Transparenz weg.

Nun meine Frage: Wie schaffe ich es, dass das Canvas transparent wird?
Alternativ würdet ihr mir auch helfen, wenn ihr mir sagt, wie ich zur Laufzeit weitere Bilder in der main.xml positionieren kann.

Danke schonmal.


Gruß Manu
 
Du musst unterscheiden zwischen Resourcen und Daten zur Laufzeit. Alles was du in einer der Xml-Dateien zur Entwurfszeit anlegst, ist eine Resource und lässt sich zur Laufzeit nicht mehr ohne weiteres ändern. Lediglich selektieren.

Willst du hingegen zur Laufzeit Daten anzeigen (Text, Bilder etc.) dann schreibst du sie einfach in die entsprechende Komponente. Aber eben nicht über den Umweg sie erst in eine der Resourcen-Dateien schreiben zu wollen.

Und nebenbei bemerkt kannst du zur Laufzeit auch jederzeit die Eigenschaften der Komponenten ändern, also auch die Farbe bzw. Transparenz eines Canvas.

Gruß
Chris
 
Danke für die Erklärung.

Ich zeichne zur Laufzeit ein Bild, welches ich dann einer Resource (ImageView) zuweise.

Das klappt ganz gut, ist leider nicht so schnell, wie ein Cavas, das man direkt in den Ausgabe-Buffer schreibt (onDraw).

Zu dem transparenten Cavas. Erstaunlicherweise geht das nicht. Ich habe es mit drawARGB und drawColor (ich hoffe, die Methoden heißen so, kann gerade nicht nachschauen) versucht. Mein Display hatte bestenfalls eine hellgraue Farbe. Aber transparent wurde das Canvas nie.


Gruß Manu
 

Ähnliche Themen

A
  • Arif12
Antworten
7
Aufrufe
1.394
Jaiel
Jaiel
H
Antworten
3
Aufrufe
1.165
swa00
swa00
znieh99
Antworten
2
Aufrufe
775
znieh99
znieh99
Zurück
Oben Unten