1.3月19日学习进度2.第一次结对作业3月27日开发进度3.第一次结对作业4月11日开发进度4.4月18日冲刺记录5.4月19日学习进度6.4月19日冲刺记录7.4月20日学习进度8.4月20日冲刺记录9.4月21日冲刺记录10.第一次结对作业4月10日开发进度11.4月23日学习进度12.4月23日冲刺记录13.4月22日冲刺记录14.4月25日冲刺记录15.4月26日冲刺记录16.4月27日学习记录17.4月28日学习记录18.4月24日冲刺记录19.4月22日学习进度20.4月30日学习进度21.5月6日学习进度22.5月8日学习进度23.5月10日学习进度24.6月4日学习进度25.5月11日学习进度26.5月12日学习进度27.5月13日学习进度28.5月15日学习进度29.5月16日学习进度30.5月17日学习进度
31.5月18日学习进度
32.5月19日学习进度33.5月20日学习进度34.5月21日学习进度35.5月22日学习进度36.5月23日学习进度37.5月24日学习进度38.5月25日学习进度39.5月26日学习进度40.5月27日学习进度41.5月28日学习进度42.5月29日学习进度43.5月30日学习进度44.5月31日学习进度45.6月1日学习进度46.6月2日学习进度47.6月3日学习进度48.6月5日学习进度49.6月6日学习进度50.6月7日学习进度51.6月11日学习进度52.6月12日学习进度(个人总结)53.6月14日学习进度54.6月17日学习进度55.人月神话读后感156.人月神话读后感257.人月神话读后感3一.所花时间
0.5h
二.代码量
30行
三.博客量
1篇
四.了解到的知识点
日期对话框DatePickerDialog
虽然EditText提供了inputType="date"的日期输入,但是很少有人会手工输入完整日期,况且EditText还不支持“ 年 ** 月 **日”这样的中文日期,所以系统提供了专门的日期选择器DatePicker,供用户选择具体的年月日。不过,DatePicker并非弹窗模式,而是在当前页面占据一块区域,并且不会自动关闭。按习惯来说,日期控件应该弹出对话框,选择完日期就要自动关闭对话框。因此,很少直接在界面上显示DatePicker,而是利用已经封装好的日期选择对话框DatePickerDialog。DatePickerDialog相当于在AlertDialog上装载了DatePicker,编码时只需调用构造方法设置当前的年、月、日,然后调用show方法即可弹出日期对话框。日期选择事件则由监听器OnDateSetListener负责响应,在该监听器的onDateSet方法中,开发者获取用户选择的具体日期,再做后续处理。特别注意onDateSet的月份参数,它的起始值不是1而是0。也就是说,一月份对应的参数值为0,十二月份对应的参数值为11,中间月份的数值以此类推。
public class DatePickerActivity extends AppCompatActivity implements
View.OnClickListener, DatePickerDialog.OnDateSetListener {
private TextView tv_date; // 声明一个文本视图对象
private DatePicker dp_date; // 声明一个日期选择器对象
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_date_picker);
tv_date = findViewById(R.id.tv_date);
// 从布局文件中获取名叫dp_date的日期选择器
dp_date = findViewById(R.id.dp_date);
findViewById(R.id.btn_date).setOnClickListener(this);
}
5.4.3 时间对话框TimePickerDialog
既然有了日期选择器,还得有对应的时间选择器。同样,实际开发中也很少直接用TimePicker,而是用
封装好的时间选择对话框TimePickerDialog。该对话框的用法类似DatePickerDialog,不同之处主要有
两个:
(1)构造方法传的是当前的小时与分钟,最后一个参数表示是否采取24小时制,一般为true表示小时
的数值范围为0~23;若为false则表示采取12小时制。
(2)时间选择监听器为OnTimeSetListener,对应需要实现onTimeSet方法,在该方法中可获得用户选
择的小时和分钟。
在界面上内嵌显示TimePicker的效果如图5-35所示,其中,小时与分钟可通过上下滑动选择。单独弹出
时间对话框的效果如图5-36所示,其中小时与分钟按照钟表风格展示。
@Override
public void onClick(View v) {
if (v.getId() == R.id.btn_date) {
// 获取日历的一个实例,里面包含了当前的年月日
Calendar calendar = Calendar.getInstance();
// 构建一个日期对话框,该对话框已经集成了日期选择器。
// DatePickerDialog的第二个构造参数指定了日期监听器
DatePickerDialog dialog = new DatePickerDialog(this, this,
calendar.get(Calendar.YEAR), // 年份
calendar.get(Calendar.MONTH), // 月份
calendar.get(Calendar.DAY_OF_MONTH)); // 日子
dialog.show(); // 显示日期对话框
}
}
// 一旦点击日期对话框上的确定按钮,就会触发监听器的onDateSet方法
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int
dayOfMonth) {
// 获取日期对话框设定的年月份
String desc = String.format("您选择的日期是%d年%d月%d日",
year, monthOfYear + 1, dayOfMonth);
tv_date.setText(desc);
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
2023-05-18 每日打卡-27