Show AlertDialog in any position of the screen
If you for example want to move the progressdialog a bit further down, and not set the exact pixel position, then this is sufficient:
progressDialog.getWindow().getAttributes().verticalMargin = 0.2F;
After searching in various post I have found the solution.
The code is posted below:
private CharSequence[] items = {"Set as Ringtone", "Set as Alarm"};
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setItems(items, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
if(item == 0) {
} else if(item == 1) {
} else if(item == 2) {
}
}
});
AlertDialog dialog = builder.create();
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
WindowManager.LayoutParams wmlp = dialog.getWindow().getAttributes();
wmlp.gravity = Gravity.TOP | Gravity.LEFT;
wmlp.x = 100; //x position
wmlp.y = 100; //y position
dialog.show();
Here x position's value is pixels from left to right. For y position value is from bottom to top.
To make the setting come info effect, I added the following codedialog.getWindow().setAttributes(wmlp);
after change the value of wmlp in gypsicoder‘s answer, or the setting of wmlp doesn't take into effect by my test.