首页 > 系统 > Android > 正文

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

2019-12-12 02:48:47
字体:
来源:转载
供稿:网友

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

<?xml version="1.0" encoding="utf-8"?>  <LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:background="@android:color/white">  <TextView   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"/>  </LinearLayout> 

开启一个线程,然后通过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动态显示当前年月日时分秒系统时间,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对武林网网站的支持!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表