gpt4 book ai didi

android - 居中 GWT DialogBox 不考虑我手机浏览器的 "zoom"因素

转载 作者:太空狗 更新时间:2023-10-29 14:28:03 28 4
gpt4 key购买 nike

我有一个非常简单的 GWT 应用程序,它收集一些数据并在用户单击“提交”时提供确认对话框。我创建了一个 com.google.gwt.user.client.ui.DialogBox,填充它,然后调用它的 center() 方法。

在桌面网络浏览器中,对话框正确居中显示。然而,在手机浏览器上,居中不考虑缩放。也就是说,如果我放大表单,然后单击“提交”,对话框将位于整个页面的中心……而不是我当前的真实视口(viewport)。如果我放大得很远,对话框根本不可见。该应用程序似乎已经死了,除非您足够聪明可以缩小。在 iPhone 和我的 Android 手机上会发生大致相同的事情。

效果可以从谷歌演示页面看到http://gwt.google.com/samples/Showcase/Showcase.html#!CwDialogBox将手机纵向放置,放大“显示对话框”按钮,然后单击该按钮。该页面将显示为卡住。您看不到弹出窗口,也无法四处移动。您唯一能做的就是缩小。

我对这里的任何解决方案都很满意。例如,也许对话框可以以某种方式在我的“有效”视口(viewport)中居中。或者也许有某种方法可以让浏览器缩小?

最佳答案

嗯,我还没有想出如何获取有关实际视口(viewport)的信息。也就是说,用户在放大后可以看到的内容。但一个合理的解决方案是将对话框放在提交按钮的顶部。因为他们只是点击了提交按钮,所以这一定是显示对话框的合理位置。

int targetX = submitButton.getAbsoluteLeft() + (submitButton.getOffsetWidth() - dialogBox.getOffsetWidth()) / 2;
int targetY = submitButton.getAbsoluteTop() + (submitButton.getOffsetHeight() - dialogBox.getOffsetHeight()) / 2;
dialogBox.setPopupPosition(targetX, targetY);

关于android - 居中 GWT DialogBox 不考虑我手机浏览器的 "zoom"因素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9934522/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com