Ho creato una finestra di avviso personalizzata da visualizzare alla fine del gioco in modo che il giocatore possa inserire il suo nome per salvarlo. Il problema è quando chiamo show()
nella finestra di dialogo appare ma non è centrato verticalmente! È un po 'più basso di quanto dovrebbe e non importa quali proprietà ho impostato in xml o quando si utilizza setGravity()
.Finestra di dialogo di avviso personalizzato non centrata verticalmente su Android
Penso che questo sia lo stesso problema di the one mentioned here, ma nessuno ha dato una risposta adeguata.
Grazie per il vostro aiuto.
Per maggiori dettagli, qui è il mio codice:
AlertDialog.Builder builder;
LayoutInflater inflater = (LayoutInflater)this.getSystemService(LAYOUT_INFLATER_SERVICE);
View layout = inflater.inflate(R.layout.newrecord,(ViewGroup)findViewById(R.layout.shoot));
builder = new AlertDialog.Builder(this);
builder.setView(layout);
newRecDialog = builder.create();
E qui è il codice del primo elemento del layout XML di newrecord.xml
:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:gravity="center"
android:padding="10dp"
android:baselineAligned="true">
Ecco l'uscita screenshot: alt text http://the.niox.free.fr/divers/dialog_offset.png
Ho provato tutto questo già e non funziona. Il mio file XML è in realtà la descrizione del contenuto della finestra di dialogo che infilo, è sbagliato? – NioX5199
Non riesco a prenderti bene. Ma in qualsiasi modo il contenuto della vista non influisce sulla gravità. quindi per favore pubblica il tuo codice. ci proverò – Praveen
@ NioX5199: puoi pubblicare lo screenshot dell'output? – Praveen