Edycja: Otrzymałem już dwie wyczerpujące odpowiedzi dotyczące stałych marginesów. Chociaż zdecydowałem się na stosowanie stałych marginesów zamiast marginesów wagi, pierwotne pytanie pozostaje otwarte.Wyśrodkuj marginesy liniowe i "procentowe"
Próbuję uzyskać następującą konstrukcję w Androidzie:
Skoncentrowane pionową listę rzeczy (TextView, EditViews itd.), Które pozostawia około 10% wolnego miejsca na poziomej jak w lewo/prawy margines, z tłem.
Co próbowałem i nie działa/działało częściowo:
- LinearLayout, pionowy, jak układ najwyższego poziomu. Jeśli grawitacja jest ustawiona na "wyśrodkowany", tło jest ograniczone do rozmiaru układu. W jaki sposób ustawia się w ten sposób procentowe marginesy (szerokości)?
- LinearLayout na RelativeLayout: działa tło, poziome centra, wagi nie istnieją.
- LinearLayout na LinearLayout: Prace w tle, praca z ciężarkami, poziome centrowanie przesuwa całą dostępną przestrzeń w prawo.
(w dwóch ostatnich przypadkach, mój Eclipse skarży się również, że jeden z układów jest zbędne.)
nie napisali kod, po rozpatrzeniu, że jest to nieco bardziej związane zasada-pytanie. Jaki byłby (najlepszy) sposób osiągnięcia tego?
Dziękuję.
XML odpowiadającego ostatniej jednego przypadku testowego:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:baselineAligned="false"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1.0"
android:weightSum="1.0"
android:background="#013c57" >
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/linearLayout1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.9"
android:layout_gravity="center"
android:orientation="vertical" >
<!-- Stuff -->
</LinearLayout>
</LinearLayout>
Czy możesz udostępnić plik xml z nami? –