Android 如何创建谷歌地图风格的下拉对话框?

Android 如何创建谷歌地图风格的下拉对话框?,android,Android,在谷歌地图应用程序中,当您打开菜单并单击“方向”时,会弹出一个谷歌地图特有的对话框。它将地图视图保留在后台,但从顶部(或底部,如果您使用的是旧版本的Android)显示搜索对话框 我很好奇是否有人知道他们是如何达到这种效果的。我愿意创建一个自定义对话框,但似乎对话框被设计为弹出到屏幕中间(任何其他类型的对话框都被拒绝作为系统对话框)。Google Maps使用了什么技巧?只需将活动的根布局设置为框架布局或相对布局(这样您的新视图就可以与屏幕上的内容重叠)。然后,只需添加一个布局,其中包含您想要的

在谷歌地图应用程序中,当您打开菜单并单击“方向”时,会弹出一个谷歌地图特有的对话框。它将地图视图保留在后台,但从顶部(或底部,如果您使用的是旧版本的Android)显示搜索对话框


我很好奇是否有人知道他们是如何达到这种效果的。我愿意创建一个自定义对话框,但似乎对话框被设计为弹出到屏幕中间(任何其他类型的对话框都被拒绝作为系统对话框)。Google Maps使用了什么技巧?

只需将活动的根布局设置为框架布局或相对布局(这样您的新视图就可以与屏幕上的内容重叠)。然后,只需添加一个布局,其中包含您想要的任何内容作为根布局的子级(例如,当在某个位置单击按钮时,手动或使用),并在子级上定义一个,然后再显示它


有关布局动画的更多信息,请查看Android SDK附带的API演示应用程序。

如何使屏幕的其余部分以弹出对话框的方式变灰?啊-最简单的方法是使用半透明主题使菜单成为新的活动——我所说的使用布局动画仍然适用,但是您可以跳过关于框架布局的部分。或者,如果你想留在同一个活动中,你可以在FrameLayout中的主布局上方、新对话框下方粘贴一个半透明层(例如,将子FrameLayout设置为以“#cddd”或类似背景填充父框架)。最终的解决方案比我预期的更复杂,但基于这个答案。谢谢。:)