Heim > Java > javaLernprogramm > Wie lege ich in Android programmgesteuert Ränder für Schaltflächen in einem LinearLayout fest?

Wie lege ich in Android programmgesteuert Ränder für Schaltflächen in einem LinearLayout fest?

DDD
Freigeben: 2024-11-05 14:15:02
Original
830 Leute haben es durchsucht

How to Set Margins for Buttons in a LinearLayout Programmatically in Android?

Ränder in einem LinearLayout programmgesteuert festlegen

In Android können Layoutelemente sowohl mit XML- als auch mit Java-Code konfiguriert werden. Während XML einen unkomplizierten Ansatz zum Festlegen von Rändern bietet, kann es schwierig sein, das gleiche Ergebnis programmgesteuert zu erzielen. In dieser Frage wird untersucht, wie mit Java-Code Ränder für Schaltflächen innerhalb eines LinearLayouts festgelegt werden.

Problem:

Ein Entwickler möchte ein LinearLayout erstellen, das vertikal ausgerichtete Schaltflächen enthält, die das ausfüllen Bildschirm mit angegebenen Rändern dazwischen. Der bereitgestellte Code erstellt das LinearLayout und fügt Schaltflächen ohne Ränder hinzu, aber Versuche, Ränder mithilfe von LinearLayout.MarginLayoutParams hinzuzufügen, schlagen fehl, weil ein Gewichtsattribut fehlt.

Lösung:

Um Ränder in einem LinearLayout programmgesteuert festzulegen, können Sie die folgenden Schritte verwenden:

  1. Erstellen Sie ein LinearLayout-Objekt und legen Sie seine Ausrichtung auf vertikal fest.
  2. Erstellen Sie ein LinearLayout.LayoutParams-Objekt und geben Sie es an die gewünschten Ränder mit setMargins(left, top, right, bottom).
  3. Fügen Sie jede Schaltfläche zum LinearLayout hinzu, indem Sie addView(button, layoutParams) verwenden.

Beispiel für Java-Code :

<code class="java">LinearLayout ll = new LinearLayout(this);
ll.setOrientation(LinearLayout.VERTICAL);

LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(
     LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);

layoutParams.setMargins(30, 20, 30, 0);

Button okButton = new Button(this);
okButton.setText("some text");
ll.addView(okButton, layoutParams);</code>
Nach dem Login kopieren

Mit diesem Code werden die Schaltflächen mit den angegebenen Rändern zum LinearLayout hinzugefügt und füllen den Bildschirm vertikal aus.

Das obige ist der detaillierte Inhalt vonWie lege ich in Android programmgesteuert Ränder für Schaltflächen in einem LinearLayout fest?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage