我有一个使用底部应用栏的Windows Phone 8.1应用。单击其中一个应用程序栏按钮时,底部的应用程序栏将打开一个菜单弹出按钮。打开弹出菜单时,应用程序栏将部分覆盖弹出菜单的底部。只有当虚拟导航栏可见时,才会发生这种情况。如果虚拟导航栏被隐藏,或者电话具有物理导航按钮,则弹出菜单将完整正确显示。
我仔细研究过了,它不是复制品。
一个类似的问题是Flyout behind Appbar。当弹出菜单显示时,我尝试隐藏底部的应用程序栏,但随后弹出菜单就隐藏在虚拟导航栏的后面。
另一个类似的问题是AppBarButton.Flyout bad positioning。我尝试以编程方式创建弹出菜单,但弹出菜单仍然模糊不清。
我试着创建一个新的应用程序,只有底部的应用程序栏,一个应用程序栏按钮和一个菜单弹出按钮,效果相同。我在使用物理导航按钮的仿真器、使用虚拟导航栏的仿真器和使用虚拟导航栏的物理设备上对其进行了测试。
请注意,要使用虚拟导航栏按钮在仿真器中进行测试,您必须将其设置为720P或1080P仿真器,然后依次单击Tools、Sensors、enable Software按钮,单击Apply,然后等待操作系统重新启动。
我尝试在菜单弹出按钮的底部添加一个额外的空白菜单弹出项,以补偿底部的空间,但当虚拟导航栏被隐藏时,这是不可取的,因为那样会有一个可见的空白空间。将底部边距添加到最后一个菜单弹出菜单项目时也是如此。
我还尝试了ApplicationViewBoundsMode.UseVisible和ApplicationViewBoundsMode.UseCoreWindow,并隐藏或显示底部的应用程序栏,但没有得到任何一致的结果。
这看起来像是一个bug,但必须有一个合理的解决方案,因为使用日历应用程序并单击视图按钮来选择日、周、月或年似乎都可以完美地工作,无论虚拟导航栏是可见的还是隐藏的,或者手机根本不使用虚拟导航栏。
我希望菜单弹出按钮不被底部的应用程序栏覆盖。如何才能做到这一点?
发布于 2016-07-30 07:14:55
你试过PopUpMenu类了吗?这个类给你几乎与弹出菜单一样的体验,除非它不弹出它所在的元素,并且可以很容易地在任何位置显示。我想你的问题可以通过使用它来解决。
这是它的文档https://msdn.microsoft.com/library/windows/apps/br208693
https://stackoverflow.com/questions/38416600
复制相似问题