package com.baobao.sayhello;
import android.app.*;
import android.content.*;
import android.graphics.*;
import android.os.*;
import android.view.*;
import android.widget.*;
import java.util.*;
class mview extends View{//自定義一個叫mview的新類型思劳,繼承View
public mview(Context con){//構(gòu)造(初始化)函數(shù)
super(con);
}
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh)
{
//窗口大小改變時觸發(fā)
super.onSizeChanged(w, h, oldw, oldh);
}
@Override
protected void onDraw(Canvas canvas)
{
//繪圖時觸發(fā)
super.onDraw(canvas);
Paint p=new Paint();
p.setColor(Color.rgb(255,255,0));
p.setTextSize(100);
Calendar c=Calendar.getInstance();//新建日期時間c
c.setTimeZone(TimeZone.getTimeZone("GMT+8:00"));//設定時區(qū)(中國)
int y=c.get(Calendar.YEAR),m=c.get(Calendar.MONTH)+1,d=c.get(Calendar.DATE);//獲得年月日
canvas.drawText(String.valueOf(y)+"年"+String.valueOf(m)+"月"+String.valueOf(d)+"日",0,100,p);
int h=c.get(Calendar.HOUR),mi=c.get(Calendar.MINUTE),s=c.get(Calendar.SECOND);//獲得時分秒
canvas.drawText(String.valueOf(h)+"時"+String.valueOf(mi)+"分"+String.valueOf(s)+"秒",0,200,p);
int w=c.get(Calendar.DAY_OF_WEEK)-1;//獲得星期幾(0表示周日)
canvas.drawText("周"+String.valueOf(w),0,300,p);
long ms=System.currentTimeMillis();//獲得1970年1月1日的凌晨12點距今的毫秒數(shù)
p.setTextSize(50);
canvas.drawText("1970年1月1日的凌晨12點距今"+String.valueOf(ms)+"毫秒",0,400,p);
}
@Override
public boolean onTouchEvent(MotionEvent event)
{
//觸控屏幕時觸發(fā)
invalidate();//重畫屏幕
return true;//返回真,表示已處理消息
}
}
public class MainActivity extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
mview view=new mview(this);//新建一個叫view的mview
setContentView(view);//把view設為整個界面
}
}
當手指觸屏或滑動時可以看到當前時間在不斷變化峻贮。
以上獲取的時間是12小時制的儿子。24小時制的小時數(shù)用Calendar.HOUR_OF_DAY
或者可以獲取現(xiàn)在是上午還是下午腌紧,計算出24小時制的時間贱枣。繪圖部分改為:
Paint p=new Paint();
p.setColor(Color.rgb(255,255,0));
p.setTextSize(100);
Calendar c=Calendar.getInstance();//新建日期時間c
c.setTimeZone(TimeZone.getTimeZone("GMT+8:00"));//設定時區(qū)(中國)
int h=c.get(Calendar.HOUR);
if(c.get(Calendar.AM_PM)==Calendar.AM)//如果上午
canvas.drawText("上午监署,24小時制為"+String.valueOf(h)+"時",0,100,p);
else if(c.get(Calendar.AM_PM)==Calendar.PM)//如果下午
canvas.drawText("下午,24小時制為"+String.valueOf(12+h)+"時",0,100,p);