课程表---基于SQLite增删查改
效果图:
图片不是同一时段截的图,只能展示一下有的功能。
实现的功能:
1.固定课节数为 12 节;
2.新增、修改课节时间;
3.新增课程,单击已有的课程进行修改课程信息,长按进行删除;
4.课程信息和课节时间的数据存储在SQLite数据库中;
布局思路:
1.在xml里:
a.主布局:
菜单栏(Toolbar)、
一行周等字的标题(LinearLayout,水平布局)、
为每一周(RelativeLayout)和左侧的课程节数“节/周”(LinearLayout垂直布局)都设置一个layout;
b.itemCourseNumber:为左侧一个课节数view写好样式;
c.itemCourseCard:为一个课程view写好样式;
2.代码中:
a.判断课程总共有多少节,则向左侧的课程节数的layout_course_number里添加多少个view(即itemCourseNumber);
b.左侧一个课节数view的高度和某一个课程占一节课的高度一致;
c.根据某一个课程的开始课节数和左侧一个课节数view的高度,算出某一个课程View(item_course_card)在对应的周layout里的开始Y坐标(即HEIGHT_SINGLE_COURSE_NUMBER * (course.getStart()-1));再根据此课程的开始课节数和结束课节数,算出此课程View(item_course_card)在对应的周layout里的所占的总高度(即(course.getEnd()-course.getStart()+1)*HEIGHT_SINGLE_COURSE_NUMBER - 2),最后使用随机数的方式,为每一个课程view设置背景颜色;并添加进其对应的周layout中;