Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows phone 7 允许使用应用程序内主页按钮导航到主页吗?_Windows Phone 7_Navigation_Windows Phone_Home Button - Fatal编程技术网

Windows phone 7 允许使用应用程序内主页按钮导航到主页吗?

Windows phone 7 允许使用应用程序内主页按钮导航到主页吗?,windows-phone-7,navigation,windows-phone,home-button,Windows Phone 7,Navigation,Windows Phone,Home Button,我想知道应用程序内Home按钮的实现,它可以将您从任何页面带回主页。据我所知,WP7开发指南不允许这样做。但是我找不到任何关于这个的书面信息 有人知道这是写在哪里的吗?我相信只要“后退”按钮导航返回到最后一个可见页面,这是允许的。我不认为这是不允许的,但是,这样做可能会导致导航循环,当用户试图使用“后退”按钮退出您的应用程序时,这会让用户感到恼火 例如,假设一个应用程序有3个页面,A、B和C。假设C页面包含一个“主页”按钮,可以直接返回A页面。因此,您的导航堆栈最终可能会如下所示: A ->

我想知道应用程序内Home按钮的实现,它可以将您从任何页面带回主页。据我所知,WP7开发指南不允许这样做。但是我找不到任何关于这个的书面信息


有人知道这是写在哪里的吗?

我相信只要“后退”按钮导航返回到最后一个可见页面,这是允许的。

我不认为这是不允许的,但是,这样做可能会导致导航循环,当用户试图使用“后退”按钮退出您的应用程序时,这会让用户感到恼火

例如,假设一个应用程序有3个页面,A、B和C。假设C页面包含一个“主页”按钮,可以直接返回A页面。因此,您的导航堆栈最终可能会如下所示:

A -> B -> C -> A -> B -> C -> A ....
这需要大量的后退按钮才能让用户回到起始页并退出应用程序。有几种方法可以避免这种情况,当然,最明显的是,不提供“主页”按钮。但如果你决定这是你的应用程序的必备品,你可以

  • 使用管理循环导航

  • 使用一种更简单的方法,当用户按下home按钮时,维护一个全局标志,设置该标志并调用
    NavigationService.GoBack()
    。覆盖每个页面上的
    OnNavigatedTo
    方法,如果设置了此全局标志,请再次调用
    NavigationService.GoBack()
    ,直到到达主页面


    • 这是允许的,但不推荐。一般来说,您应该依靠返回按钮进行导航以返回主页

      如果您确实想实现这种行为,您应该与熟悉手机的实际用户仔细测试。不要让不熟悉手机的用户使用你的UX测试无效。您的实际用户将会并且期望您的应用程序遵循本机应用程序和几乎所有其他应用程序的约定


      如果确实需要实现此功能,您可能希望使用正确管理后退按钮行为。

      通常不建议使用主页按钮:

      在用户界面中放置主页按钮与Windows Phone导航模式不同

      在应用程序中实现Home(主页)按钮还可能导致第二个问题,这对应用程序的影响要严重得多:它可能会无意中造成这样一种情况:当用户同时使用Home(主页)按钮和hardware Back(硬件后退)按钮进行导航时,用户可能会陷入无限(或接近无限)循环。如果他们使用“后退”按钮从一个应用程序返回到您的应用程序,只是为了到达另一个应用程序,则此循环可能会变得更糟。确保这些问题不会影响您的应用程序

      但是,请尽量保持应用程序的体系结构尽可能浅显,并利用列表和数据轴,以便用户只需几步就可以导航回登录屏幕,并从那里返回到以前启动的应用程序

      但也有一些应用程序不能进行浅层导航,并且需要一个主页按钮,例如google drive或dropbox folders browser——深入文件夹结构后,用户将希望快速导航到主页。准则:

      如果您的应用程序允许用户PIN页,请考虑是否需要一个Home按钮来让用户快速回到应用程序的根目录。strong>主页按钮导航到应用程序的主页,然后清除整个导航回栈

      例如,如果固定页面是购物车,则用户可能希望在购物车中完成购买,然后再次开始购物。在这种情况下,通过减少用户返回应用程序开始时所需的点击次数,给用户一个主页按钮可以改善用户体验

      在主页中:

      protected override void OnNavigatedTo(NavigationEventArgs e)
      {
          while (NavigationService.BackStack.Any())
              NavigationService.RemoveBackEntry();
          base.OnNavigatedTo(e);
      }