Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android: Display custom dialog in center of the container

How to display custom dialog as a center of the container?

Dialog customdialog = new Dialog(this,android.R.style.Theme_Translucent_NoTitleBar); 
Window window = customdialog.getWindow();
window.setLayout(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
window.setGravity(Gravity.CENTER);

R.style.Theme_Translucent_NoTitleBar - is used to remove border for cutomdialog. Once i used this line the dialog will appear at the topleft corner of the tablet?

Can anyone help me to solve this issue?

like image 912
Kamal Avatar asked May 02 '12 10:05

Kamal


2 Answers

Change the fill_parent to wrap_content.I hope this will be the issue the dialog appear at the corner of the activity.It takes the space of whole layout.So changing this may help you to get what you realy wanted.

Window window = customdialog.getWindow();
window.setLayout(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
window.setGravity(Gravity.CENTER);

Use above code after dialog.show() statement

like image 179
Sreedev Avatar answered Oct 13 '22 20:10

Sreedev


I added this to the dialog's custom style and it worked fine.

<item name="android:layout_gravity">center</item>

My dialog's width and height are set to wrap_content. The style's parent is

parent="@android:style/Theme.Light"

like image 29
Shabnam Sarup Avatar answered Oct 13 '22 18:10

Shabnam Sarup