Android动态显示当前年月日时分秒系统时间(示例代码)

Android动态显示当前年月日时分秒系统时间(示例代码)

发布时间:2020-10-07 21:17:01

来源:脚本之家

阅读:113

作者:a15838319826

在布局文件中放一个TextView用来显示时间,如下所示:

xmlns:android=”http://schemas.android.com/apk/res/android”

android:layout_width=”match_parent”

android:layout_height=”match_parent”

android:background=”@android:color/white”>

android:id=”@+id/mytime”

android:layout_width=”match_parent”

android:layout_height=”match_parent”

android:gravity=”center”

android:textColor=”@android:color/black”

android:textSize=”36sp”/>

开启一个线程,然后通过handler发消息,来实时的更新TextView上显示的系统时间:

import android.app.Activity;

import android.os.Bundle;

import android.os.Handler;

import android.os.Message;

import android.text.format.DateFormat;

import android.widget.TextView;

public class TestActivity extends Activity {

private static final int msgKey1 = 1;

private TextView mTime;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.time);

mTime = (TextView) findViewById(R.id.mytime);

new TimeThread().start();

}

public class TimeThread extends Thread {

@Override

public void run () {

do {

try {

Thread.sleep(1000);

Message msg = new Message();

msg.what = msgKey1;

mHandler.sendMessage(msg);

}

catch (InterruptedException e) {

e.printStackTrace();

}

} while(true);

}

}

private Handler mHandler = new Handler() {

@Override

public void handleMessage (Message msg) {

super.handleMessage(msg);

switch (msg.what) {

case msgKey1:

mTime.setText(getTime());

break;

default:

break;

}

}

};

//获得当前年月日时分秒星期

public String getTime(){

final Calendar c = Calendar.getInstance();

c.setTimeZone(TimeZone.getTimeZone(“GMT+8:00”));

String mYear = String.valueOf(c.get(Calendar.YEAR)); // 获取当前年份

String mMonth = String.valueOf(c.get(Calendar.MONTH) + 1);// 获取当前月份

String mDay = String.valueOf(c.get(Calendar.DAY_OF_MONTH));// 获取当前月份的日期号码

String mWay = String.valueOf(c.get(Calendar.DAY_OF_WEEK));

String mHour = String.valueOf(c.get(Calendar.HOUR_OF_DAY));//时

String mMinute = String.valueOf(c.get(Calendar.MINUTE));//分

String mSecond = String.valueOf(c.get(Calendar.SECOND));//秒

if(“1”.equals(mWay)){

mWay =”天”;

}else if(“2”.equals(mWay)){

mWay =”一”;

}else if(“3”.equals(mWay)){

mWay =”二”;

}else if(“4”.equals(mWay)){

mWay =”三”;

}else if(“5”.equals(mWay)){

mWay =”四”;

}else if(“6”.equals(mWay)){

mWay =”五”;

}else if(“7”.equals(mWay)){

mWay =”六”;

}

return mYear + “年” + mMonth + “月” + mDay+”日”+” “+”星期”+mWay+” “+mHour+”:”+mMinute+”:”+mSecond;

}

}

以上所述是小编给大家介绍的Android动态显示当前年月日时分秒系统时间,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的