java - 如何使用 Kotlin 在 android 中更改 TextClock 的格式
问题描述
<TextClock
android:layout_marginTop="20dp"
android:id="@+id/textClock"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="45dp"
android:format12Hour="hh:mm:ss a"
android:layout_gravity="center"/>
这是我的布局文件中的 TextClock 我想以编程方式将其格式从 12 小时更改为 24 小时
到目前为止,我已经尝试过:
var textClock: TextClock = view.findViewById<TextClock>(R.id.textClock)
textClock.format24Hour = "hh:mm:ss a"
但似乎没有任何效果。在 java 中调用了一个方法setFormat24Hour(CharSequence format)
,但在 Kotlin 中我无法达到预期的结果。
您的帮助将不胜感激。谢谢
解决方案
正如文档所说,该setFormat24Hour(CharSequence)
方法:
指定用于以 24 小时模式显示日期和/或时间的格式模式。
它实际上并没有将时钟更改为 24 小时制。相反,TextClock
它使用系统默认设置来决定使用哪种格式。
但是,如果您真的想强制执行格式,您应该将其他模式的格式设置为null
,这将强制它显示您想要的方式。
推荐阅读
- themes - React.js 使用 context api 实现暗/亮主题,当我使用 contextprovider 时,是否可以在 App 组件中获取数据?
- python - 处理 CSV 值中的逗号、引号
- java - 如何使用 JACKSON 在 JAVA 中映射来自 JSON 的数组,该数组可以包含不同类型的对象作为项目?
- reactjs - 使用 useState (Reactjs) 时未选中材料表复选框
- firebase - 在 Flutter 应用中保持 Firebase 用户登录
- scilab - SciLab -> 图形问题 -> 黑色窗口
- reactjs - 使用 React Hooks 在 ReactJS 中使用来自 StencilJS 的事件?
- javascript - 仅花费 1000 个文档集合的大小作为 1000 个读取吗?
- amazon-web-services - 使用 boto3 生成存储桶中最新对象的预签名 s3 URL
- node.js - 如何在节点工作线程的帮助下在 mongoose mongodb 集合中插入大数组对象?