Xamarin,对时区变化做出反应

Posted

技术标签:

【中文标题】Xamarin,对时区变化做出反应【英文标题】:Xamarin, react to timezone change 【发布时间】:2015-05-20 14:06:26 【问题描述】:

我和我的同事正在编写一个 xamarin.forms 应用程序。在我们的应用程序中有一个时间选择器。该时间的值存储在 sqlite 数据库中,并在页面加载时加载。时间以 UTC 时间存储并以本地时间显示。是否有可能在不关闭并重新打开应用程序的情况下对时区更改做出反应。

例如:我在奥地利,将时间设置为 9:00。当我去伦敦旅行时,应该显示 8:00,而无需关闭并重新打开应用程序。

在 xamarin 中是否有类似时区更改的事件?

【问题讨论】:

【参考方案1】:

我不这么认为。

您必须为每个平台创建不同的实现。

You can listen to time changes event in android 使用动作Intent.ACTION_TIMEZONE_CHANGED, and Intent.ACTION_TIME_CHANGED

And on ios you can listen 到 AppDelegate 中的 applicationSignificantTimeChange 方法。

文档还说,如果在您的应用处于后台时发生时间更改,您将在您转到前台时得到它

如果您的应用程序当前处于挂起状态,则此消息将排队 直到您的应用程序返回到前台,此时它是 已送达。

我不知道有什么方法可以在 Windows Phone 上收听时间变化。

【讨论】:

以上是关于Xamarin,对时区变化做出反应的主要内容,如果未能解决你的问题,请参考以下文章

浅谈 Xamarin Community Toolkit 的未来发展

浅谈 Xamarin Community Toolkit 的未来发展

为啥内部值会对整个 ref 的变化做出反应?

如何对 UIView 上的自动布局约束引起的大小变化做出反应?

如何让 rhandsontable 对输入值的变化和自身的变化做出反应?

Xamarin Android 中的响应式布局