Ist die Quelle des Schiebereglers und des Unterrichtslink:
In diesem Fall hat die Breite der Datei "left_menu.xml" TextView bestimmt (android: layout_width="260dp") Wie stelle ich die Breite auf "LinearLayout" Datei "left_menu.xml" je nach Gerät Bildschirm? Zum Beispiel möchte ich die Breite des "LinearLayout" war immer 1/3 des Bildschirms Gerät? Oder eine Möglichkeit, die Breite des TextView 1/3 der Breite des Gerätebildschirms einzustellen.
Um die LinearLayout
oder TextView
Breite auf 1/3 des Gerätebildschirms einzustellen:
Holen Sie sich zunächst die Bildschirmbreite des Geräts:
%Vor% Erstellen Sie jetzt einfach ein LayoutParams
und setzen Sie es auf den Text:
Wie Sie sehen, können Sie Integer-Werte für den LinearLayout.LayoutParams () - Konstruktor wie folgt festlegen:
%Vor%Der Kostruktor benötigt Pixel und nicht dp (Dichtepixel), hier ist eine Formel, um PXs von DPs zu konvertieren:
%Vor%Die obigen Antworten sind korrekt. Ich werde zukünftigen Lesern nur empfehlen, sich ihre XML-Layoutdatei anzusehen und sicherzustellen, dass das LinearLayout-Element kein Gewichtsattribut verwendet. In diesem Fall sollten Sie das Gewicht in Ihrem LayoutParams-Objekt aktualisieren. Eine weitere gute Methode besteht darin, das Layoutparameterobjekt aus der Ansicht abzurufen, die Sie anzupassen versuchen, anstatt eine neue Vorlage zu erstellen und alle Werte festzulegen.
Tags und Links android android-layout