Ich habe ein relatives Layout, das ich programmgesteuert erstelle:
RelativeLayout layout = new RelativeLayout( this );
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT);
Jetzt habe ich zwei Schaltflächen, die ich in diesem relativen Layout hinzufügen möchte. Das Problem ist jedoch, dass beide Schaltflächen links neben dem RelatiiveLayout angezeigt werden und sich überlappen.
buttonContainer.addView(btn1);
buttonContainer.addView(btn2);
Jetzt möchte ich wissen, wie ich das android:layout_alignParentRight="true
"oder" android:layout_toLeftOf="@id/btn"
Attribut von Schaltflächen programmgesteuert festlegen kann, wie wir es in der XML tun.
button
auf einem istRecycleView
? Ist es nicht ein Problem, dem gleichen Widget gleiche oder entgegengesetzte Regeln hinzuzufügen?addRule
?btn1.setId(1);
addRule()
, überprüfen Sie die Android Java-Dokumente für diesesLayoutParams
Objekt.quelle
Zum Hinzufügen eines
RelativeLayout
Attributs, dessen Wert wahr oder falsch ist, verwenden Sie0
für falsch undRelativeLayout.TRUE
für wahr:Es spielt keine Rolle, ob das Attribut bereits hinzugefügt wurde oder nicht, Sie verwenden es dennoch, um es
addRule(verb, subject)
zu aktivieren / deaktivieren. Sie können jedoch Post-API 17 verwenden,removeRule(verb)
was nur eine Verknüpfung für istaddRule(verb, 0)
.quelle
Kotlin-Version:
Verwenden Sie diese Erweiterungen mit Infix-Funktionen , die spätere Aufrufe vereinfachen
Verwenden Sie sie dann als Infix-Funktionsaufrufe:
Oder Sie können sie als normale Funktionen verwenden:
quelle