Android之根据时区获取当前时间

文章目录


前言

偶尔我们也会做多个国家的APP,难免少不了时间显示,所以我们就需要获取当前时区的当前时间,几句代码解决、

一、效果图

二、实现步骤

1.TimeUtil

kotlin 复制代码
package com.example.merchant.utils

import android.text.format.Time
import java.util.TimeZone

/**
 * @Author : CaoLiulang
 * @Time : 2023/9/13 18:25
 * @Description :根据时区获取当地时间并格式化
 */
class TimeUtil {
    companion object {
        @JvmStatic
        //通过时区的id获得当时的时间
        fun getTime(id: String?): String? {
            val tz = TimeZone.getTimeZone(id)
            var time = Time(tz.id)
            time.setToNow()
            var year = time.year
            var month = time.month
            var day = time.monthDay
            var minute = time.minute
            var hour = time.hour
            var sec = time.second
            var month1 = ""
            var day1 = ""
            month1 = if (month <= 8) {
                "0${(month + 1)}"
            } else if (month == 9) {
                "${(month + 1)}"
            } else {
                "" + month
            }
            day1 = if (day < 10) {
                "0$day"
            } else {
                "" + day
            }
            var hour1 = ""
            hour1 = if (hour < 10) {
                "0$hour"
            } else {
                "" + hour
            }
            var minute1 = ""
            minute1 = if (minute < 10) {
                "0$minute"
            } else {
                "" + minute
            }
            var sec1 = ""
            sec1 = if (sec < 10) {
                "0$sec"
            } else {
                "" + sec
            }
            return year.toString() +
                    "-" + month1 +
                    "-" + day1 +
                    " " + hour1 +
                    ":" + minute1 +
                    ":" + sec1
        }
    }
}

2.调用

kotlin 复制代码
 TimeUtil.getTime(America/Sao_Paulo)

总结

如果需要像正常时间一样走动,那就需要开个定时器一秒调用一次方法、

相关推荐
zhaoyufei1335 小时前
Android13删除Taskbar
android
6***B487 小时前
存储过程(SQL)
android·数据库·sql
学困昇8 小时前
C++中的异常
android·java·c++
Jerry9 小时前
问题记录 - Android IdleHandler 没有执行
android
没有了遇见9 小时前
Android ButterKnife Android 35情况下 适配 Gradle 8.+
android
方白羽9 小时前
Android多层嵌套RecyclerView滚动
android·java·kotlin
菜就多学10 小时前
SurfaceControlViewHost 实现跨进程UI渲染
android·设计
2501_9151063211 小时前
iOS App 测试工具全景分析,构建从开发调试到线上监控的多阶段工具链体系
android·测试工具·ios·小程序·uni-app·iphone·webview
小羊在奋斗12 小时前
MySQL表的约束:从基础到核心(附场景+案例)
android·数据库·mysql
e***193512 小时前
MySQL-mysql zip安装包配置教程
android·mysql·adb