如何在TextClock中强制使用12小时时间格式?

时间:2017-10-16 22:32:13

标签: java android

我在android中有一个TextClock,它应该只以12小时格式显示来自系统的时间。问题是即使系统本身以12小时格式显示它,它也会以24小时格式显示。 我已经在文本视图中使用了 android:format12Hour =" HH:mm:ss" ,但它似乎完全忽略了这一点。

我知道Android指南说不要覆盖用户的系统设置,但这个文本时钟是专为石油钻井行业的数学计算而设计的应用程序,需要以12小时格式显示。

3 个答案:

答案 0 :(得分:1)

Joop Eggen的解决方案有效。

In java SimpleDateFormat HH = 24h, hh = 12h

不确定我是如何忽略这一点的。 :)谢谢!

答案 1 :(得分:1)

我刚遇到这个问题,解决了这个问题:

radius - stroke/2

无论默认用户设置是什么,这都会覆盖格式。

答案 2 :(得分:0)

android:format12Hour指定TextClock使用12hrs模式时要使用的格式,但它不强制执行:

  

指定用于以12小时模式显示时间和/或日期的格式设置模式。

因此,如果用户的设备使用12小时时钟模式,则将使用该格式,否则使用android:format24Hour

  石油钻井行业需要以12小时格式显示。

请原谅我的法语,但那通常是纯粹的BS。 显示的方式如何影响时间计算?无论用户使用什么时钟模式,您的结果都是一样的。如果没有,那么您的应用程序将被破坏,应该修复。

修改

TextClock非常简单。如果当前的实现不符合您的需求,请编写自己的实现。您甚至可以重复使用当前代码TextClock.java