您的位置:首页 > 其它

自定义的时钟,DatePickerDialog 和 TimePickerDialog的使用

2014-03-24 21:47 465 查看
在这前曾经初步的认识了DatePickerDialog ,也写了一些心得《DatePicker和DatePickerDialog的基本使用方法/article/9418189.html

这次是在之前的基础上又进一步的了解了关于“时间日期”这方面的知识,下面是这一次效果图











主要两个类:DatePickerDialog 和 TimePickerDialog

TimePickerDialog:它是一个对话框。它有个构造方法,那里面有一个借口,用于接收获取当前手机的时间,后面参数是小时,分钟和秒,还有最后一个参数设置为true是定义为24小时。

方法当中要用到一个TimePickerDialog.OnTimeSetListener,这是一个借口,这里需要声明一个类去实现这个借口,这里声明个匿名内部类,看起来有点麻烦。

那当我们的对话框里面的时间有修改时,它就会提示出一个小的对话提示

DatePickerDialog:也是一个对话框,构造方法类似,参数就是年、月、日。这里也有一个借口,DatePickerDialog.OnDateSetListener,要声明匿名内部类,作用同上

还有一个Android 里面的类,Calendar,我们可以利用这个类去get出手机的时间日期。当然,还少不了基本控件AnalogClock

主要的java代码

public class MainActivity extends Activity {
private Button button1,button2;
private int hourOfDay , minute , yeaar , monthOfYear , dayOfMonth;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

button1 = (Button)findViewById(R.id.button1);
button2 = (Button)findViewById(R.id.button2);

button1.setOnClickListener(new button1setOnClikListenner());
button2.setOnClickListener(new button2setOnClikListenner());

//获得当前的时间获得小时和分钟
Calendar calendar = Calendar.getInstance();
hourOfDay =calendar.get(Calendar.HOUR_OF_DAY);
//当前的秒
minute = calendar.get(Calendar.MINUTE);

yeaar =calendar.get(Calendar.YEAR);
monthOfYear = calendar.get(Calendar.MONTH);
dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH);
}

class button1setOnClikListenner implements OnClickListener{

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
TimePickerDialog timePickerDialog = new TimePickerDialog(MainActivity.this, new MyTimePickerDialog(), hourOfDay, minute, true);
timePickerDialog.show();//显示对话框
}

}

class button2setOnClikListenner implements OnClickListener{

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
DatePickerDialog datePickerDialog = new DatePickerDialog(MainActivity.this , new MyDatePickerDialog() , yeaar , monthOfYear , dayOfMonth);
datePickerDialog.show();
}

}

public  class  MyTimePickerDialog implements TimePickerDialog.OnTimeSetListener {

@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "hourOfDay:"+hourOfDay+"minute:"+minute,1).show();

}

}

public class MyDatePickerDialog implements DatePickerDialog.OnDateSetListener{

@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "year:"+year+"monthOfYear:"+monthOfYear+"dayOfMonth:"+dayOfMonth,1).show();

}

}



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: