我需要生成一个为用户显示的时区列表。我们想根据用户的Locale缩小列表范围。
如果用户的语言环境为“en_US”,他可能并不关心列表中的“Asia / Ashkhabad”。
这可行吗?
答案 0 :(得分:4)
不,你不能。您可以使用TimeZone.getAvailableIDs(int rawoffset)来缩小结果范围,但是您需要保留Locale->原始偏移的映射。
此外,如果您的用户是位于印度的美国人,会发生什么?你不想为他显示班洛时区吗?
答案 1 :(得分:2)
答案 2 :(得分:1)
当然可行......但你必须写一些代码。
您必须使用过滤时区列表的代码来选择您的时区。您可以使用区域设置地图将该过滤器填充到区域设置的时区集合中。
然而,正如David所说,你将面临Locale不是他们工作地点或时区的人的问题,所以要准备以两层方式处理这个问题,或者从某个地方拿起“虚拟语言环境”
答案 3 :(得分:-1)
您可能会发现THIS对实现您的目标非常有用。