Programmgesteuertes Festlegen von Rändern in einem LinearLayout
Um ein LinearLayout mit gleichmäßig verteilten Schaltflächen zu erstellen, die den gesamten Bildschirm einnehmen, muss stattdessen Java-Code verwendet werden von XML. Allerdings hat sich das Erreichen von Rändern zwischen Schaltflächen in diesem Szenario für einige Entwickler als Herausforderung erwiesen.
Ein Versuch umfasste die Verwendung von LinearLayout.MarginLayoutParams, aber es fehlt ein Gewichtungsattribut und es funktioniert nicht mit dem Layoutparameterobjekt (lp). Daher scheint es unmöglich zu sein, die Ränder in diesem Zusammenhang zu manipulieren.
Lösung:
Glücklicherweise ist es möglich, diese Funktionalität mit einer geringfügigen Änderung zu implementieren der 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>
In diesem Code werden die Layoutparameter für die Schaltfläche mit LinearLayout.LayoutParams erstellt. Die setMargins-Methode wird dann verwendet, um die Ränder um die Schaltfläche herum festzulegen und sicherzustellen, dass sie einen Abstand zu den benachbarten Schaltflächen hat.
Das obige ist der detaillierte Inhalt vonWie programmgesteuert Ränder für Schaltflächen in einem LinearLayout festlegen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!