Android之TimePicker和TimePickerDialog
来源:互联网 发布:淘宝赌石最好赌出什么 编辑:程序博客网 时间:2024/05/16 10:40
TimePikcer的实现:
通过OnTimeChangedListener()方法中的OnTimeChanged方法实现。
实例代码如下:
public class MainActivity extends Activity {
private TimePicker tp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tp=(TimePicker)findViewById(R.id.tp);
//设置时间是否为24小时制,true代表24小时制,false代表上下午
tp.setIs24HourView(true);
//设置OnTimeChangedListener监听器,实现onTimeChanged方法
tp.setOnTimeChangedListener(new OnTimeChangedListener(){
//getCurrentHour()得到小时,getCurrentMinute()得到分钟
public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
Toast.makeText(MainActivity.this,"现在时间是" +tp.getCurrentHour() +":" + pad(tp.getCurrentMinute()),Toast.LENGTH_SHORT).show();
}
});
}
private static String pad(int c){
if(c>=10){
return String.valueOf(c);
}
else{
return "0"+String.valueOf(c);
}
}
}
效果图:
效果图:设置时间为12:03
TimePickerDialog实现:
1.初始化Calendar,Calendar c=Calendar.getInstance()
2.用Calendar对象调用get方法得到当前的小时和分钟
mHour=c.get(Calendar.HOUR_OF_DAY);
mMinute=c.get(Calendar.MINUTE);
3.设置button监听器,在监听器内创建TimePickerDialog对话框,点击弹出TimePickerDialog
settime.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
TimePickerDialog tpd=new TimePickerDialog(MainActivity.this, mTimesetlistener, mHour, mMinute, true);
tpd.show();
}
});
4.设置TimePickerDialog监听器
private TimePickerDialog.OnTimeSetListener mTimesetlistener=new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
mHour=hourOfDay;
mMinute=minute;
updateDisplay();
}
};
注意这里的监听器名称和上面创建的TimePickerDialog对象的监听参数一致,都是mTimesetlistener。
5.定义updateDisplay()方法
完整的代码如下:
public class MainActivity extends Activity {
private TextView showtime;
private Button settime;
int mHour;
int mMinute;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
showtime=(TextView)findViewById(R.id.showtime);
settime=(Button)findViewById(R.id.settime);
Calendar c=Calendar.getInstance();
mHour=c.get(Calendar.HOUR_OF_DAY);
mMinute=c.get(Calendar.MINUTE);
showtime.setText("现在时间是"+mHour+":"+mMinute);
settime.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
TimePickerDialog tpd=new TimePickerDialog(MainActivity.this, mTimesetlistener, mHour, mMinute, true);
tpd.show();
}
});
}
private TimePickerDialog.OnTimeSetListener mTimesetlistener=new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
mHour=hourOfDay;
mMinute=minute;
updateDisplay();
}
};
private void updateDisplay(){
showtime.setText("现在时间是"+new StringBuilder().append(mHour).append(":").append(mMinute));
}
}
效果图:刚启动的界面
效果图:点击设置时间,设置为12:11
效果图:设置完成后
- Android之TimePicker和TimePickerDialog
- Android时间选择器TimePicker和数字选择器NumberPicker和TimePickerDialog
- [android]控件TimePicker/TimePickerDialog简介
- TimePicker与DatePicker以及TimePickerDialog和DatePickerDialog
- 在android中用TimePicker和DatePicker或者TimePickerDialog和DatePickerDialog来动态调整时间和日期
- TimePicker、TimePickerDialog的使用
- Android之Date/TimePickerDialog
- Android控件之TimePickerDialog
- Android之TimePickerDialog使用
- Android DatePickerDialog和TimePickerDialog
- android TimePickerDialog和DatePickerDialog
- android—DatePicker 和TimePicker显示日期以及使用TimePickerDialog,DatePickerDialog来专门实现时间选择对话框
- Android之DatePicker和TimePicker的使用
- android 之DatePicker和TimePicker系列
- android控件之DatePicker和TimePicker
- android控件开发之TimePicker和DatePicker
- Android学习笔记之TimePicker和DatePicker
- Android控价之TimePicker和DatePicker
- 【Java TCP/IP Socket】01 TCP Socket(含代码)
- Linux 第二步
- POJ 1458 最长公共子序列的长度
- poj 1743 Musical Theme(后缀数组+二分)
- mongoose源码分析系列之Control socket pair
- Android之TimePicker和TimePickerDialog
- 二叉搜索树转化为双向链表
- mongoose源码分析系列之server_data
- Unix 传奇
- GTK+实现图片显示、放大、缩小、拖动、选中区域
- Web 前端性能优化——把 JavaScript 中的对象存储在变量中
- mongoose源码分析系列之listening_sock
- [BZOJ1303][CQOI2009]中位数图
- 超宽带射频信号高速记录回放系统——模拟带宽3GHZ,记录回放速度高达6000MB/S!