问题标签 [tombstoning]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
335 浏览

silverlight - Windows Phone 7 Silverlight 墓碑

我已阅读要求,当用户按下后退按钮时,应用程序必须退出。(5.4.2):“从应用程序的第一个屏幕按下返回按钮必须退出应用程序”。

因此,我在许多站点中读到无法在 Silverlight 中退出,但我认为它们的意思是,该应用程序应该只停用(例如,当我们按下带有“Windows 标志”的按钮时,它会被停用)。我的应用程序中有一个主菜单。如果我在另一个页面上导航并返回主菜单,按“后退按钮”不会停用应用程序,因为以前的页面是应用程序中的另一个页面。那么,也许我需要清理“导航历史”?但这是不可能的,我在某处读过……那么,在这种情况下该怎么办?

0 投票
1 回答
573 浏览

windows-phone-7 - wp7 silverlight canvas 墓碑化后显示黑屏

我的 wp7 应用程序中有一个屏幕,只有一个画布,用于显示图表。

我处理页面加载事件以绘制图形,通过向图形子项添加线条,线条存储在 App.xaml.cs 中的列表变量中。

编辑:这是我的画线功能

我通过在设置中存储/加载行来处理墓碑。

我在页面加载方法中放置了一个断点,在立碑后线条被正确恢复,并且线条被添加到图形画布子项中,但画布显示黑屏。

我该如何解决这个问题?

0 投票
3 回答
687 浏览

silverlight - 按下开始和返回按钮后 WP7 应用程序将无法加载

我的应用程序有一些问题,并在接收和阅读文本后恢复它。

它目前可以在锁定屏幕上正常工作,但是当我按下开始按钮并执行某些操作然后按返回以恢复应用程序时,恢复消息会出现几秒钟,然后消失,然后黑屏会持续 15 秒以上,然后应用程序不再出现。

我会说这可能与页面的加载时间有关,但我的应用程序在启动时没有任何加载时间问题。我没有在 App.xaml.cs 的激活/停用部分中实现代码,所以这不会影响它。

有人知道这里可能出了什么问题吗?任何帮助将非常感激。

小更新:测试后快速连续按下 windows 和返回按钮确实有效。但是当你留出时间让进程结束时,它就会变黑。我在示例应用程序上尝试了相同的测试,它们无需 app.xaml.cs 中的任何代码即可恢复

0 投票
2 回答
1568 浏览

windows-phone-7 - 导航到详细信息页面 - 共享视图模型或导航查询字符串?

从列表页面导航到详细信息页面时,有两种高级方式在页面之间传递选择数据:共享视图模型实例和在导航 Uri 的查询字符串中传递标识符。

我应该使用哪个?使用一种方法而不是另一种方法(从视图模型访问当前 Uri、导航事件的时间等)是否存在任何问题?

0 投票
1 回答
559 浏览

serialization - XNA - WP7 - TiledLib - 序列化和墓碑

我目前正在使用适用于 Windows Phone 7 的 XNA Game Studio 4.0 框架编写 2D 游戏。如果用户想要保存/加载或恢复游戏,我已经到了解决游戏墓碑问题的阶段稍后的比赛。

我目前正在使用TiledLib库来渲染地图等,以及屏幕状态管理示例作为我的项目的基础(例如,用于墓碑的事件都已到位)。MapTiledLib 库中的对象有一个多维数组 ( [,]) 来存储每个TileLayer. 我的地图只有一个TileLayer,并且只有 1 个Texture2D具有不同的Rectangle源位置,具体取决于图块显示的内容。重要的是,我跟踪每个图块的所有适当源矩形,以便可以按照玩家离开的方式恢复已编辑的地图。

我在尝试找出实现游戏屏幕墓碑的最佳方式(或任何方式)时遇到了很多麻烦。我在序列化方面没有太多经验,这是我第一次尝试为 Windows Phone 7 应用程序建立墓碑。我知道非锯齿状数组无法使用通常的 XmlSerializer 进行序列化,有没有办法解决这个问题?自定义序列化程序是一个很好的路径吗?优点缺点?有没有其他人有使用 TileLib 和序列化游戏屏幕的经验?还是带有 X,Y 坐标的 2D 地图?多少数据是太多数据而无法序列化以进行墓碑化?

提前感谢您的回答和建议。

0 投票
2 回答
3062 浏览

windows-phone-7 - 在墓碑后恢复 LongListSelector 中的滚动位置

我正在尝试使用 WP7 Silverlight Toolkit 中的 LongListSelector 控件。这需要一些工作,但我终于让它与我的应用程序一起使用。不幸的是,我在正确处理墓碑过程时遇到了一些麻烦。

当应用程序墓碑(或用户通过选择列表中的项目导航到另一个页面)时,我保存列表中最顶部可见项目的副本。我将它保存到类变量和应用程序状态集合中。

然后,当用户返回页面时,我检查两个值(状态或变量)之一并使用它来恢复最后滚动位置。

除非应用程序墓碑,否则这很有效。在这种情况下,我没有收到任何错误,但列表完全是空白的,直到我触摸它并拖动它。一旦我这样做了,它就会重新显示在列表的顶部。我查看了控件的来源,发现当您调用 .ScrollTo(object) 时,它没有匹配。进一步调查发现,在搜索要滚动到的项目时,它使用 == 而不是 Equals 进行比较。我只覆盖了 Equals,显然默认 == 比较(按设计)引用。当您在墓碑化后恢复状态项时,引用不匹配。我可以覆盖 ==,但这感觉不对。我可以更改并重建控制源以调用 equals (我尝试过并且有效),但它是由比我聪明得多的人编写的,我想知道我是否不明白。

0 投票
1 回答
594 浏览

windows-phone-7 - 防止开始菜单、相机按钮墓碑 WP7 应用程序

我有一个 WP7 应用程序,我禁用了手机的空闲功能,例如:

但是,相机按钮和开始菜单仍然会暂停应用程序并在之后恢复。无论按下这些按钮,我都希望应用程序运行。如何防止这些按钮墓碑化应用程序?

0 投票
2 回答
487 浏览

windows-phone-7 - WP7:在应用程序后台编辑屏幕截图(芒果)

我有一个我一直在开发的可以显示敏感用户数据的应用程序。

当用户将应用程序设置为后台时,操作系统似乎会在应用程序运行时截取应用程序的屏幕截图,并将其显示出来,以便在用户返回时恢复其状态。

我试图阻止在此屏幕截图中看到用户的信息。

我最初的想法是显示我的初始屏幕图像的弹出窗口,但它似乎没有在 ApplicationDeactivated 中呈现它。你有没有其他方法可以做到这一点?

0 投票
1 回答
667 浏览

windows-phone-7 - Caliburn.Micro 1.1 中的自定义序列化

我正在将 1.0 WP7 应用程序升级到 CM 1.1。除其他外,我将删除旧的基于属性的墓碑并实现存储类。

这通常涉及为每个 VM 创建一个用于存储目的的类,从StorageHandler<T>(其中 T 是 VM 的类型)派生它并覆盖其Configure方法,例如:

在这种情况下,如何使用自己的序列化/反序列化代码为无法自动序列化的对象实现自定义序列化机制?例如,我的一个虚拟机有一个StrokeCollection属性,我想序列化其中的笔划,但为此我需要替换会引发安全异常的默认机制。

谁能展示一个假的 CM WP7 示例来说明如何自定义某些属性的序列化,以便我可以放置自己的代码来序列化/反序列化它?谢谢!

0 投票
1 回答
658 浏览

windows-phone-7 - WP7 中的墓碑问题,无法判断我是否需要恢复或实例化/查询新数据

我刚刚遇到了 WP7 中臭名昭著的墓碑问题/问题。假设我有 3 页,FirstPage.xaml、SecondPage.xaml 和 ThirdPage.xaml。自然流量将是:

FirstPage.xaml -> SecondPage.xaml -> ThirdPage.xaml

换句话说,

主页 -> 包含对象列表的页面 -> 显示上一页详细对象的页面

当我从 FirstPage.xaml 转到 SecondPage.xaml 时,我必须执行数据库查询以获取 SecondPage.xaml 中的列表。然后我需要从 SecondPage.xaml 转到 ThirdPage.xaml(在我从 List 中选择一个 MyObject 之后)。在这一点上,墓碑对我来说变得非常混乱。

我知道当执行 FirstPage.xaml -> SecondPage.xaml 时,会调用 SecondPage.xaml.cs 的构造函数。我知道当去 ThirdPage.xaml -> SecondPage.xaml(返回,通过点击后退按钮或 NavigationService.GoBack())时,不会调用 SecondPage.xaml.cs 的构造函数。当我从 SecondPage.xaml 移动到 ThirdPage.xaml 时,我将视图模型 (VM) 对象存储在 PhoneApplicationService.Current.State (SecondPage.xaml.cs.OnPageNavigatedFrom()) 中。

我的(有缺陷的)策略是,如果在一个实例(FirstPage.xaml -> SecondPage.xaml)中调用 SecondPage.xaml.cs 的构造函数,但在另一个实例(ThirdPage.xaml -> SecondPage.xaml)中没有调用,然后我可以在构造函数中设置一个布尔标志是执行新的数据库查询还是恢复页面的状态(来自PhoneApplication.Current.State)。布尔标志最初设置为 false,并且仅在 SecondPage.xaml.cs 的构造函数中设置为 true。

我认为这很好用,但是当我按下开始按钮离开应用程序然后点击返回按钮返回应用程序时,调用了 SecondPage.xaml.cs 的构造函数。所以我做另一个新的数据库查询而不是恢复状态,这不是预期的行为。

我的问题是,当用户点击开始然后返回到应用程序时,我怎么知道何时执行新的数据库查询与恢复?我自己想过如何解决这个问题,但我想到的大部分都是杂牌;这似乎不自然,好像我在修补以使事情正常进行。例如,我认为我可以将查询字符串从 FirstPage.xaml 传递到 SecondPage.xaml(即 /SecondPage.xaml?freshDbQuery=1),但是当我从 ThirdPage.xaml 移回 SecondPage.xaml 时,查询字符串键值对,freshDbQuery=1,总是如此!(如您所知,我不太了解 wp7)。

任何帮助表示赞赏。