Android: Wie overlay-bitmap und zeichne über ein bitmap?
Ich habe drei Fragen tatsächlich:
- Ist es besser, ziehen Sie ein Bild in einer bitmap, oder erstellen Sie eine bitmap als Ressource und ziehen Sie es über ein bitmap? Leistung klug, welches ist besser?
- Wenn ich will, zu zeichnen, etwas transparent über ein bitmap, wie würde ich gehen, es zu tun?
- Wenn ich will, überlagern eine transparente bitmap verwendet wird, über die andere, wie sollte ich das tun?
Sorry für die lange Liste, aber im Interesse lernen, würde ich gerne erkunden, die beide Ansätze.
InformationsquelleAutor Legend | 2009-10-08
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich kann nicht glauben, dass noch niemand beantwortet hat diese noch! Ein Seltenes Ereignis auf, SO!
1
Die Frage nicht ganz sinnvoll für mich. Aber ich gebe es zu stechen.
Wenn Sie Fragen über die direkte Zeichnung auf eine Leinwand (Polygone, Beschattung, text etc...) vs. laden einer bitmap blitting auf die Leinwand, die hängt von der Komplexität der Zeichnung.
Wie die Zeichnung wird immer komplizierter, die CPU-Zeit, die benötigt wird, entsprechend zu erhöhen.
Allerdings blitting eine bitmap auf eine Leinwand wird immer eine Konstante Zeit, die proportional zur Größe der bitmap an.
2
Ohne zu wissen, was "etwas" ist, wie kann ich Ihnen zeigen, wie Sie es tun?
Sie sollten in der Lage sein, um herauszufinden, #2 aus der Antwort #3.
3
Annahmen:
Du willst Sie beide überlagert von der linken oberen Ecke.
Können Sie etwas wie das hier tun:
Die Idee ist ganz einfach: Einmal verknüpfen Sie ein bitmap mit einer Leinwand, können Sie rufen Sie die Leinwand' Methoden zum zeichnen über die bitmap.
Dieser Arbeit wird für bitmaps, die Transparenz. Eine bitmap wird Transparenz, wenn es einen alpha-Kanal hat. Blick auf Bitmap.Config. Sie würde wahrscheinlich verwenden wollen ARGB_8888.
Wichtig: Schauen Sie auf diese Android-Beispiel für die verschiedenen Möglichkeiten, die Sie ausführen können, zeichnen. Es wird Ihnen helfen, eine Menge.
Leistung wise (Speicher-Weise, um genau zu sein), Bitmaps sind die besten Objekte zu verwenden, da Sie einfach wickeln Sie ein natives bitmap. Eine Bildansicht ist eine Unterklasse von View, und eine BitmapDrawable hält eine Bitmap, aber es hat viele andere Dinge auch. Aber dies ist eine starke Vereinfachung. Können Sie vorschlagen, eine performance-spezifischen Szenario für eine präzise Antwort.
bitmap
parameter werden muss, um eine veränderliche bitmap. Look at diesem blog-post zu sehen, wie die Umwandlung einer unveränderlichen bitmap in eine veränderliche oder zum laden einer Datei in eine veränderliche ein.Wenn der Zweck ist, erhalten Sie ein bitmap, das ist sehr einfach:
Ende, Bild enthält die überschneidung von Bild und image2.
Ich denke, dieses Beispiel wird definitiv helfen Ihnen bei der überlagerung ein transparentes Bild auf ein anderes Bild. Möglich wird dies durch die Zeichnung sowohl die Bilder auf der Leinwand und die Rückkehr des bitmap-Bildes.
Lesen Sie mehr oder laden Sie demo - hier
und nennen Sie die oben genannten Funktion auf die Schaltfläche klicken Sie auf, und übergeben Sie die zwei Bilder auf unsere Funktion wie folgt
Seit mehr als zwei Bilder, können Sie diesem link Folgen, wie das Zusammenführen mehrerer Bilder, die programmgesteuert auf android