选课系统android

2019-07-04  本文已影响0人  我是一个努力干活还不粘人的小妖

设计内容:

  设计开发一个简单的“学生选课系统”APP,并实现基本的选课功能,查询功能。主要功能及要求:

(1)能够实现学生基本信息的录入、修改、删除等操作,其中学生信息包括班号、学号、性别等;

(2) 能够实现课程信息的录入、修改、删除等功能,其中课程信息包括课程号、课程名、学分等;

(3)能实现选课功能,每个学生有选修学分限制,超出可选学分限制会提示;

(4)能方便的对学生选课情况进行查询,可以根据学号、姓名、班级、课程名等多种方式查询;

(5)有汇总功能,能对每个学生的选修学分汇总,并对选修学分不足的学生进行筛选。

我现在说一下recyclerview

首先要知道 手机屏幕上的列表视图(listview recyclerview grideview等)有很多条目,比如你微信有1000个好友,你在好友界面去滑动去看 不可能加载1000个view给你 内存不够。所以就需要复用view 。其实就是一个类,这个类里会有view。就是adapter里的viewholder viewholder最多只有X个(X为你屏幕上能显示的最多条目) 当往下滑动 最上面的消失后他会自动清掉view 重新加载下一个view 依次循环 这就是adapter里viewholder的作用

这个项目里我用了两个viewholder 一个是正常的样子 normal 一个是foot  foot就是没有更多了 这个view  本质就是一个textview

使用recyclerview的步骤:

1.初始化recyclerview(findviewbyid)

2.初始化adapter对象

3.初始化layoutmanager对象(用来展示不同的效果,可以自定义)

调用recyclerview.setadapter()  .setLayoutmanager即可

刷新数据使用adapter的notifydatasetchanged方法

layoutmanager这里就用系统自带的 LinearLayoutmanager 就是用来展示一个最普通的 线性布局

adapter需要自己写 主要写以下方法

1.getItemcount 返回条目的数量 这里我全都+了1 因为还有foot

2.onCreateviewholder 返回一个viewholder

3.onBindviewholder 在这个方法里需要给对应条目设置数据(课程名之类的东西)以及加点击事件 方法参数里有position告诉你现在是第几个item 你就去data里去取出来对应的对象 然后给itemview设置数据

每个item两个按钮 上面的用来选课 下面的用来取消选课。

但是已经选过的要给出提示 所以 两个按钮都有两种状态  只说一个

上面的选课按钮

这个界面是从数据库查课程 你登录完了不是保存了Global.student 那么你就可以获取到登录用户已经选了哪些课程 你可以根据name来判断也可以根据id来判断 判断是否存在 存在就把文字设置为已选 不存在就设置为选课 当点击的时候 判断文字来判断状态 已选就提示不能重复选 选课就执行选课的逻辑:给对应的course更新状态(选课人数)、给当前登录的学生更新状态(学分、选课的课名、ID)

上一篇 下一篇

猜你喜欢

热点阅读