2012-02-19 7 views
5

Sto cercando un modo per ridimensionare (in modo che non tocchi i bordi) uno EditText all'interno di uno AlertDialog.Ridimensionare EditText all'interno di una AlertDialog

enter image description here

mio codice di esempio

AlertDialog.Builder alert = new AlertDialog.Builder(myActivity.this); 

alert.setTitle("Test"); 

EditText textBox = new EditText(myActivity.this); 
alert.setView(textBox); 

alert.setPositiveButton("OK", new DialogInterface.OnClickListener() { 
    public void onClick(DialogInterface dialog, int whichButton) { 
    // do nothing 
    } 
}); 

alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { 
    public void onClick(DialogInterface dialog, int whichButton) { 
// do nothing 
} 
}); 

alert.show(); 

Ho provato soluzioni fornite qui senza successo:

risposta

22

aggiungi il tuo edittext all'interno di una finestra di dialogo lineare e imposta i margini per quel layout. vedi sotto:

AlertDialog.Builder alert = new AlertDialog.Builder(this); 

    alert.setTitle("Test"); 

    LinearLayout layout = new LinearLayout(this); 
    layout.setOrientation(LinearLayout.VERTICAL); 
    LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
     LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT); 
    params.setMargins(20, 0, 30, 0); 

    EditText textBox = new EditText(myActivity.this); 
    layout.addView(textBox, params); 

    alert.setView(layout); 

    alert.setPositiveButton("OK", new DialogInterface.OnClickListener() { 
     public void onClick(DialogInterface dialog, int whichButton) { 
     // do nothing 
     } 
    }); 

    alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { 
     public void onClick(DialogInterface dialog, int whichButton) { 
    // do nothing 
    } 
    }); 

    alert.show(); 
+0

Grazie per aver dedicato del tempo, questo ha aiutato a mettere i pezzi giusti nei posti giusti. – ThePaul

Problemi correlati