Wenn wir einen AlertDialog in Android anzeigen, wird er in der Mitte des Bildschirms angezeigt. Gibt es eine Möglichkeit, die Position zu ändern?
android
android-layout
android-ui
Gypsicoder
quelle
quelle
wmlp.x = 100; //x position wmlp.y = 100;
Sie einzustellen , nur die Schwerkraftwmlp.gravity = Gravity.TOP | Gravity.LEFT;
ist genugWenn Sie beispielsweise den Fortschrittsdialog etwas weiter nach unten verschieben und nicht die exakte Pixelposition festlegen möchten, ist dies ausreichend:
quelle
Um die Einstellung auf den Info-Effekt zu bringen, habe ich den folgenden Code hinzugefügt
dialog.getWindow().setAttributes(wmlp);
Nach der Änderung wird der Wert von wmlp in der Antwort von gypsicoder oder die Einstellung von wmlp durch meinen Test nicht wirksam.
quelle
Diese Antworten verschieben die Position des AlertDialogs. Die Position des angezeigten Dialogfelds enthält jedoch auch das Auffüllen des Dialogfelds.
Wenn Sie diese Auffüllung entfernen möchten (z. B. um Ihren Dialog bündig am unteren Bildschirmrand zu platzieren), müssen Sie auch den Standard-AlertDialog-Stil in Ihrer styles.xml überschreiben, um den windowBackground wie folgt auf null zu setzen ::
Sowie das Einstellen der Window.LayoutParameters wie in der akzeptierten Antwort beschrieben.
Ein besonderer Gruß an @David Caunt, dessen Antwort unter: Rand entfernen, Auffüllen aus Dialog vervollständigte dieses Bild.
quelle