2012-07-09 17 views
7

Tengo un cuadro de diálogo personalizado que se extiende desde el cuadro de diálogo. para colocar el componente en él, necesito saber el ancho del diálogo. ¿Cómo podría hacerlo? Gracias ¿Cómo obtener el tamaño de un cuadro de diálogo personalizado en Android?

EDIT:

public class AnswerTypeDialog extends Dialog{ 
    public AnswerTypeDialog(Context context) { 
     super(context); 
     mContext = context; 
    } 

    @Override 
    protected void onCreate(final Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     init(); 
    } 

    protected void init(){ 
     ll=(RelativeLayout) LayoutInflater.from(mContext).inflate(R.layout.answertype_layout, null); 
     this.requestWindowFeature(Window.FEATURE_NO_TITLE); 
     setContentView(ll); 
     mWindowWidth = this.getWindow().getAttributes().width; 
    } 
} 

mWindowWidth es cero.

+0

depende de usted lo que le da ancho de altura del cuadro de diálogo. – AkashG

+0

@seaplain ¿lo resolvió? – anuj

+0

intenta cambiar tu forma de pensar. Use resource identifica y crea múltiples diseños en función del tamaño de la pantalla. – vladaman

Respuesta

-2

Puede utilizar este fragmento

int height=mDialog.getWindow().getDecorView().getHeight(); 
int width=mDialog.getWindow().getDecorView().getWidth(); 
+1

pero devuelve 0. – shohreh

+0

@shohreh muéstranos un código de lo que estás haciendo – Akram

+4

esto devuelve solo una constante asociada a su atributo, por ejemplo -2 = WRAP_CONTENT. Esta respuesta es inútil. – slezadav

0

Esto funcionará.

@Override 
    public void onWindowFocusChanged (boolean hasFocus) { 
     super.onWindowFocusChanged(hasFocus); 
     int height=mDialog.getWindow().getDecorView().getHeight(); 
    int width=mDialog.getWindow().getDecorView().getWidth(); 
} 
Cuestiones relacionadas