Android - layout Breite/Höhe des Prozentsatzes des Bildschirms?
War ich testen B4A (Basic4Android) und es gibt etwas namens ein "Design-script", dieses im Grunde ermöglicht die Positionierung von Elementen auf einem Bildschirm.
Zum Beispiel:
TextBox1.setTopAndBottom(0%y, 50%y)
TextBox1.setLeftAndRight(0%x, 50%x)
Wenn dieses Skript ausgeführt wird, wird es automatisch die position der TextBox1 auf dem Bildschirm vorstellen, das der Bildschirm ist 100 x 100 Pixel (100x100), die TextBox1 wird platziert bei (0, 0) (oben Links), (50, 50) (unten rechts).
Wie kann ich etwas erreichen, wie dies in Eclipse?
Ich kann ' T es herausfinden. Ich möchte die position eines Elements (TextBox1 zum Beispiel) zu passen 25% Breite und 50% der Höhe zum Beispiel. Wie kann ich das erreichen?
- Schlechte Praxis? Also, was ist der beste Weg zu gehen, um dieses? RelativeLayout?
- was redest du da? er bat um eine Technik (die illustrierte in Ihrer Antwort), die schrecklich. Und es heißt "verschachtelte layout-GEWICHTE"
- Ich löschte versehentlich mein Kommentar, aber ich werde es wiederholen, es hat nichts zu tun mit verschachtelten GEWICHTE. Mein link gar nichts über verschachtelte GEWICHTE, noch funktioniert mein Beispiel.
- vielen Dank für die Beratung. Also, wie sollte ich dies angehen? Ich will nicht definieren Sie die Breite/Höhe eines Elements, die speziell ist, ich wollen, um es automatisch zu tun. Ist dies überhaupt möglich mit einem relativelayout? Es scheint, wie es sollte möglich sein, und haben gute Leistung.
- Ich habe meine RelativeLayout tricky trick. Sehen Sie, wenn Sie es mögen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
OK. Dies ist die trick
In einfachen Worten: eine 1px (px, nicht dp - Sie wollen es nicht skaliert, aber klein genug, um trascurable!) TextView, die Ihre unsichtbar (lassen Sie es transparent und legen ohne text) "Zentrum des Universums".
Dann Strecken Sie Ihre anderen TextView, sondern es zu begrenzen, bleiben die Links (das ist bei 50% - 1/2 px) der center und oben (wieder 50% - 1/2 px) es:
android:layout_height="wrap_content"
. Warum geschieht dieses? Wie kann ich die Höhe kleiner, ohne hardcoding es?weighted
dimension muss gesetzt werden auf 0dp, damit Android weiß, welche dimension betroffen ist ein (nicht beide)<LL> <LL></LL> <LL></LL> </LL>
wenn ich wollte, den text über den LinearLayouts sollte es sein:<LL> <LL></LL> <LL></LL> <RL></RL> </LL>
- vielen Dank für die Hilfe.Erwägen Sie die Verwendung der Android-Prozent-support-Bibliothek, das fügt eine PercentRelativeLayout und PercentFrameLayout, die es ermöglichen, Kinder zu definieren, Ihre Dimensionierung in Prozent.
z.B.
Müssen Sie mit LinearLayout und GEWICHTE.
http://developer.android.com/guide/topics/ui/layout/linear.html
Beispiel 6 TextViews, jede Zeile wird bis zu 50% der Bildschirmhöhe, und in jeder Zeile jede TextView dauern wird, bis 33% der Bildschirmbreite.