我在android中有一个TextClock,它应该只以12小时格式显示来自系统的时间。问题是即使系统本身以12小时格式显示它,它也会以24小时格式显示。 我已经在文本视图中使用了 android:format12Hour =" HH:mm:ss" ,但它似乎完全忽略了这一点。
我知道Android指南说不要覆盖用户的系统设置,但这个文本时钟是专为石油钻井行业的数学计算而设计的应用程序,需要以12小时格式显示。
答案 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