U
Unicate
Erfahrenes Mitglied
- 57
Hallo alle zusammen!
Ich habe Frage, dazu muss ich das Problem genauer beschreiben.
Basiselement meiner View ist eine ListView, welche viele Listeneinträge anzeigen soll. In jeder Zeile dieser ListView, gibt es grafische Elemente, welche dynamisch auf die Zeile eingefügt werden. Für diesen Fall habe ich ein einfaches LinearLayout mit einer horizontalen Orientierung, als Zeilenlayout verwendet und füge dynamisch ImageView's ein, welche dann auch wie gewünscht nebeneinander angezeigt werden. Mein Problem ist nun, das es Grafiken gibt die übereinander liegen müssten. Im einfachsten Fall würde ich nun sagen, das ich ein FrameLayout oder ein RelativeLayout anstatt einer ImageView verwende, welche ich wiederrum mit einer ImageView fülle. Das würde sicher funktionieren aber ist nicht sehr schön und vorallem nicht performant. Besser wäre es, wenn ich mir eine eigene View schreibe, die das handelt.
So weit so gut, ist ja nicht so schwer, und nun fing ich an.
Problem ist die onMeasure - Frage.
Ich kann da jetzt nicht die Höhe und Breite der Bitmap zurückgeben, denn das wäre falsch. Woher weiß ich denn, wie Android die Bilder skalieren würde?
Im Anhang gut zu erkennen, links die einzelnen Grafiken (rot,blau) daneben was rauskommen soll mit RelativeLayout und danach nocheinmal im FrameLayout.
Wenn ich das mit meiner eigenen View mache, dann wird diese zu groß.
Irgendwie muss ich doch hier die DisplayMetrics reinrechnen. Wie mach ich das?
Ich habe Frage, dazu muss ich das Problem genauer beschreiben.
Basiselement meiner View ist eine ListView, welche viele Listeneinträge anzeigen soll. In jeder Zeile dieser ListView, gibt es grafische Elemente, welche dynamisch auf die Zeile eingefügt werden. Für diesen Fall habe ich ein einfaches LinearLayout mit einer horizontalen Orientierung, als Zeilenlayout verwendet und füge dynamisch ImageView's ein, welche dann auch wie gewünscht nebeneinander angezeigt werden. Mein Problem ist nun, das es Grafiken gibt die übereinander liegen müssten. Im einfachsten Fall würde ich nun sagen, das ich ein FrameLayout oder ein RelativeLayout anstatt einer ImageView verwende, welche ich wiederrum mit einer ImageView fülle. Das würde sicher funktionieren aber ist nicht sehr schön und vorallem nicht performant. Besser wäre es, wenn ich mir eine eigene View schreibe, die das handelt.
So weit so gut, ist ja nicht so schwer, und nun fing ich an.
Problem ist die onMeasure - Frage.
Ich kann da jetzt nicht die Höhe und Breite der Bitmap zurückgeben, denn das wäre falsch. Woher weiß ich denn, wie Android die Bilder skalieren würde?
Im Anhang gut zu erkennen, links die einzelnen Grafiken (rot,blau) daneben was rauskommen soll mit RelativeLayout und danach nocheinmal im FrameLayout.
Wenn ich das mit meiner eigenen View mache, dann wird diese zu groß.
Irgendwie muss ich doch hier die DisplayMetrics reinrechnen. Wie mach ich das?