【问题标题】:What is the event that toggles appbar in javascript Windows 8 Metro Style App?在 javascript Windows 8 Metro Style App 中切换 appbar 的事件是什么?
【发布时间】:2012-02-20 20:48:22
【问题描述】:

我正在寻找在 javascript 中切换 appbar 的事件。所以它基本上是屏幕顶部/底部边缘的“边缘滑动”手势事件。

例如,当用户滑动屏幕的上边缘或按钮边缘时,我想在页面上显示文本“边缘滑动”,而不在页面中声明应用栏。我怎样才能做到这一点?

我尝试了横向滑动事件,但似乎不对。

【问题讨论】:

标签: javascript windows-8 windows-runtime microsoft-metro appbar


【解决方案1】:

横向滑动不适合你,因为它是一种可以从任何地方开始的手势。

没有向 Metro 应用程序公开的边缘滑动事件。 Windows 8 检测到边缘滑动并自动为您提升应用栏(当您有应用栏时)。

也许他们将来会添加一个,但谁知道是否或何时,所以您可能想要进行自己的手势跟踪。我建议您查看 PointerPoint 类并构建自己的自定义手势识别器。 基本的边缘滑动应该很容易识别,但您必须注意屏幕上的所有指针。例如,如果我有一台可以跟踪 5 个手指并且其中一个手指滑动的平板电脑,那么无论或仅当当时有单个触摸点处于活动状态时,您是否都能识别手势?这取决于你。

【讨论】:

  • 谢谢@RichardBanks,我希望通过创建非常薄(5px 高度)的透明应用栏来快速破解,然后使用应用栏的 beforeShow 和 afterHide 作为我需要的事件。你认为这可能吗?
  • 这可能行得通,但我不确定你是否可以控制应用栏的高度(我还没有尝试过设置样式)。此外,您还需要在显示栏后立即手动隐藏它,这样它就不会停留在屏幕上并从它可能覆盖的任何地方窃取触摸事件。
  • 再次感谢@RichardBanks,我尝试设置高度样式,但没有成功。感谢您的建议。特别是在我的情况下,我试图在不显示本机应用栏的情况下将消息发布到 iframe。我只是试图将 appbar zindex 调整为小于我的 iframe zindex。它似乎工作得很好。我知道这是一个临时黑客,希望 MSFT 将来会介绍该事件。再次感谢。
  • 这篇文章的另一个注释。我认为您不能设置应用栏的高度或可见性。至少它对我不起作用。
【解决方案2】:

您可以查看 AppBar here 的文档

Appbar有四个事件:afterhide、aftershow、beforehide和beforeshow。

查看documentation了解更多详情

【讨论】:

  • 感谢@TiagoAndradeSilva,但这不是我的意思。我的意思是切换 AppBar 的事件,而不是 appbar 事件。我将编辑问题以使其更清楚。谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-25
  • 2012-12-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多