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)

总结

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

相关推荐
范特西林几秒前
一文看懂Android SELinux 策略,从“拒绝”到“允许”的距离
android
客卿1231 小时前
用两个栈实现队列
android·java·开发语言
studyForMokey2 小时前
【Android面试】Gradle专题
android·面试·职场和发展
向上_503582913 小时前
配置Protobuf输出Java文件或kotlin文件
android·java·开发语言·kotlin
陆业聪3 小时前
AI 时代最被低估的工程师技能:把需求写清楚
android·人工智能·aigc
夏沫琅琊3 小时前
Android 的 Activity 启动模式
android
zh_xuan4 小时前
Android compose Navigation 页面导航
android·compose
luanma1509805 小时前
PHP vs C#:30字秒懂两大语言核心差异
android·开发语言·python·php·laravel
luanma1509806 小时前
Laravel 7.X核心特性深度解析
android·开发语言·php·lua·laravel
运维老曾6 小时前
Flink 1.20 使用自带jdbc source 操作步骤
android·adb·flink