【问题标题】:pivot with in Panorma ....swipe both together在全景中枢轴....一起滑动
【发布时间】:2011-09-06 21:59:37
【问题描述】:

当我在全景图中使用枢轴时,.pivot 被用作画廊视图。我想在滑动时移动枢轴。但问题是,因为全景图和枢轴都是相同的手势事件,所以它们都在移动。 我只想滑动我的枢轴视图。

我想要一些示例代码或任何其他建议来执行此操作。 所以请给我一个解决方案 也给我一个链接,我很容易理解这一点。提前感谢

【问题讨论】:

  • 我很确定您不应该在全景图中放置一个枢轴。手势问题只是一个坏主意的原因之一。

标签: windows-phone-7


【解决方案1】:

Panorama 控件中不应有 Pivot。讨论完毕。

【讨论】:

  • 任何关于在全景中获得画廊视图的建议。
  • 你的意思是像图片中心吗?否则我认为您误解了全景控制的用途。它是一个入口控件,旨在提供快速概览并列出菜单。更深入的互动应该在其他页面上。
  • 这根本说不通。
  • 在我的项目中四个全景项目 .home 、类别、搜索、收藏......显示画廊..和另一个索引仅显示文章列表..所以画廊是我的项目的需要..
  • 您应该将图库移动到用户导航到的单独子页面。它不应该是您的 Pivot 的一部分。你完全误解了如何为手机设计。
【解决方案2】:

我相信这是可以实现的,因为我已经解决了类似的问题,即在 Pivot/Panorama 等自定义水平滚动概览容器中使用 WebBrowser 控件,但请相信我,这不值得。我不得不深入挖掘控件的视觉结构并将我自己的操作处理程序附加到它们的内脏,手动选择要传递的水平/垂直事件以及要取消的事件,等等。这不是那么容易,需要很多时间,并且不能保证最终你会得到一些你想要实现的东西。如果您不受某些合同的约束来保留 UI 的形状,请放弃这个想法并重新设计您的 UI,只是为了节省您的理智和神经。

但是,如果你已经疯了,或者真的想挖掘没有人应该挖掘的地方,请从两个矩形开始分析你的 UI:大全景和小 pivo,并考虑哪个部分应该在不同可能的触摸/h-v 滑动/ h-v 平底锅/捏/等等。写下来仅供参考,否则很快您可能会开始犯一些小错误,从而影响您对事件流程的理解。

我检查了我的版本,“我的”全景在内部使用 UIElement.ManipulationXXXX 事件。在这种情况下:

显示 UI 的可视化树并尝试将操作事件附加到每个控件。在这些事件中,写入/记录调用了哪个控件的哪个处理程序。然后在您的应用程序上进行一些滑动/滚动并观察事件。分析它们如何冒泡并尝试取消(e.Handled=true)在枢轴和全景之间某处的操作完成和/或操作增量事件。您的目标是让全景图看到 e.Handled=true,而您的枢轴必须看到 e.Handled=false。您的 Pivot 可能会比 Pano 更早看到该事件,因此这一点应该相对容易。

如果它无法正常工作,那么您应该检查您的 Pano 版本,并检查它如何检测动作。例如,如果它使用 GestureListener - 尝试使用相同的技巧。等等。

请记住,您始终可以制作自己的水平概览容器,它看起来像 Pano,行为像 Pano,并且可以更好地与 Pivo 配合使用 - 因为它将是您的代码,您会告诉它什么和何时移动。如果您想这样做,请从 google 开始,并检查随机人员在 MS 发布该控件之前发布的所有初步全景预览。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多