如何在android中调整对话框相对于设备的特定位置
我有一个安卓应用程序,其中有一个对话框,点击按钮就会打开。在这个应用程序中,我想将对话框的位置设置在按钮下方。当我使用verticalMargin时,当我在多个屏幕分辨率不同的设备中进行测试时,位置相对于设备会发生变化。我需要的是,无论屏幕大小如何,对话框应始终显示在按钮下方。在各种帖子中搜索后,我找到了解决方案 代码发布如下:如何在android中调整对话框相对于设备的特定位置,android,dialog,Android,Dialog,我有一个安卓应用程序,其中有一个对话框,点击按钮就会打开。在这个应用程序中,我想将对话框的位置设置在按钮下方。当我使用verticalMargin时,当我在多个屏幕分辨率不同的设备中进行测试时,位置相对于设备会发生变化。我需要的是,无论屏幕大小如何,对话框应始终显示在按钮下方。在各种帖子中搜索后,我找到了解决方案 代码发布如下: private CharSequence[] items = {"Set as Ringtone", "Set as Alarm"}; AlertDialog.
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();
这里x位置的值是从左到右的像素。因为y位置的值是从下到上的。我已经创建了对话框,它工作得很好。现在我需要的只是设置对话框的位置。我试着找出按钮从总屏幕高度中所占的高度百分比,并使用该比率来设置对话框边距。你对实现这一点有什么想法吗ans u可以设置wmlp.x=100//x位置wmlp.y=100//y位置是你在看这个x,y位置,根据多个设备的屏幕大小动态显示这不是我在找的:(那么你想解释什么,请再次检查我的问题