iOS上的日期格式有些问题。在Android上它可以正确显示。
var d = local.ToLongDateString();
var t = local.ToShortTimeString();
return string.Format("{0} kl. {1}", d, t);
这将显示英文日期和12小时格式的时间。电话区域设置为挪威,电话语言为挪威语,而英语为第二语言。
iOS上的结果:
2018年4月8日星期日kl。下午6点
Android上的结果:
søndag8。8月,2018 kl。 18:00
答案 0 :(得分:2)
我在Xamarin Docs - iOS Localization中找到了答案:
如果未在Info.plist文件中指定
CFBundleDevelopmentRegion
,则Xamarin.iOS构建工具当前使用默认值en_US.
解决方案是使用文本编辑器编辑Info.plist并添加以下密钥:
<key>CFBundleDevelopmentRegion</key>
<string>no</string>
答案 1 :(得分:0)
您可以自己提供格式:
local.ToString("dddd, MMMM d, yyyy kl. hh:mm tt", CultureInfo.InvariantCulture)
上述代码应在所有定位平台上返回一致的结果:
Wednesday, April 4, 2018 kl. 10:24 AM
您可以在此处轻松使用解决方案:http://rextester.com/PPP50237
有关自定义日期和时间格式字符串的更多信息,请访问here。