Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
LinearLayout
jest ViewGroup
wyświetla element podrzędny View
elementy w kierunku liniowym, pionowo lub poziomo.
Należy zachować ostrożność przy użyciu polecenia LinearLayout
.
Jeśli zaczniesz zagnieżdżać wiele LinearLayout
s, warto rozważyć użycie elementu RelativeLayout
Zamiast.
Uruchom nowy projekt o nazwie HelloLinearLayout.
Otwórz plik Resources/Layout/Main.axml i wstaw następujące elementy:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation= "vertical"
android:layout_width= "match_parent"
android:layout_height= "match_parent" >
<LinearLayout
android:orientation= "horizontal"
android:layout_width= "match_parent"
android:layout_height= "match_parent"
android:layout_weight= "1" >
<TextView
android:text= "red"
android:gravity= "center_horizontal"
android:background= "#aa0000"
android:layout_width= "wrap_content"
android:layout_height= "match_parent"
android:layout_weight= "1" />
<TextView
android:text= "green"
android:gravity= "center_horizontal"
android:background= "#00aa00"
android:layout_width= "wrap_content"
android:layout_height= "match_parent"
android:layout_weight= "1" />
<TextView
android:text= "blue"
android:gravity= "center_horizontal"
android:background= "#0000aa"
android:layout_width= "wrap_content"
android:layout_height= "match_parent"
android:layout_weight= "1" />
<TextView
android:text= "yellow"
android:gravity= "center_horizontal"
android:background= "#aaaa00"
android:layout_width= "wrap_content"
android:layout_height= "match_parent"
android:layout_weight= "1" />
</LinearLayout>
<LinearLayout
android:orientation= "vertical"
android:layout_width= "match_parent"
android:layout_height= "match_parent"
android:layout_weight= "1" >
<TextView
android:text= "row one"
android:textSize= "15pt"
android:layout_width= "match_parent"
android:layout_height= "wrap_content"
android:layout_weight= "1" />
<TextView
android:text= "row two"
android:textSize= "15pt"
android:layout_width= "match_parent"
android:layout_height= "wrap_content"
android:layout_weight= "1" />
<TextView
android:text= "row three"
android:textSize= "15pt"
android:layout_width= "match_parent"
android:layout_height= "wrap_content"
android:layout_weight= "1" />
<TextView
android:text= "row four"
android:textSize= "15pt"
android:layout_width= "match_parent"
android:layout_height= "wrap_content"
android:layout_weight= "1" />
</LinearLayout>
</LinearLayout>
Dokładnie sprawdź ten kod XML. Istnieje katalog główny LinearLayout
definiujący jego orientację w pionie — wszystkie elementy podrzędne View
(z których ma dwa) zostaną ułożone w pionie. Pierwsze dziecko jest innym LinearLayout
który używa orientacji poziomej, a drugie podrzędne jest LinearLayout
używa orientacji pionowej. Każdy z tych zagnieżdżonych LinearLayout
elementów zawiera kilka TextView
elementy, które są ze sobą zorientowane w sposób zdefiniowany przez ich element nadrzędny LinearLayout
.
Teraz otwórz HelloLinearLayout.cs i upewnij się, że ładuje on układ Resources/Layout/Main.axml w pliku OnCreate()
Metoda:
protected override void OnCreate (Bundle savedInstanceState)
{
base.OnCreate (savedInstanceState);
SetContentView (Resource.Layout.Main);
}
Metoda SetContentView(int)
) ładuje plik układu dla Activity
elementu , określony przez identyfikator zasobu — Resources.Layout.Main
odwołuje się do pliku układu Resources/Layout/Main.axml .
Uruchom aplikację. Powinien zostać wyświetlony następujący ekran:
Zwróć uwagę, że atrybuty XML definiują zachowanie każdego widoku. Spróbuj poeksperymentować z różnymi wartościami, android:layout_weight
aby zobaczyć, jak nieruchomości ekranu są dystrybuowane na podstawie wagi każdego elementu. Aby uzyskać więcej informacji na temat sposobu, zobacz dokument Common Layout Objects (Wspólne obiekty układu)LinearLayout
android:layout_weight
obsługuje atrybut .
Informacje
Części tej strony to modyfikacje oparte na pracy utworzonej i udostępnionej przez projekt open source systemu Android i używane zgodnie z warunkami opisanymi w licencji autorstwa Creative Commons 2.5.