基于Android的学习管理系统设计与开发

您所在的位置:网站首页 爱学生手机管理系统 基于Android的学习管理系统设计与开发

基于Android的学习管理系统设计与开发

2024-07-15 06:31| 来源: 网络整理| 查看: 265

本次设计选用了时下比较热门的Android平台来作为开发技术,实现了一套较为实用的学习管理系统。在校学生可以通过本软件来记录每一天的上课课程信息,记录学习信息等等。

1.开发工具及环境简介

Eclipse Classic 3.7.2SQLite3ADTAndroid SDK

2.系统功能需求

课程表的创建与查询课程信息的创建与查询课程学习时间的设定与管理(相当于学习计划)学习效果的反馈与总结

3.系统功能模块设计

本系统采用SQLite数据库来实现数据的持久性管理,本系统采用数据库来存放每一周要上的课程信息和上课地点信息,系统的模块架构设计

4.数据库设计

本系统用到的数据库为Android自带的SQLite数据库,系统采用一个数据库表来记录每一周的课程信息和上课地点信息。

表1: tb_weeks 课程信息表

各个表的详细设计:

序号

列名

数据类型

主键

说明

1

id

int

 主键

2

Week

int

 

 第几周

3

Weekindex

int

 

 周几

4

Node12

Varchar

 

1、2节课程

5

Node34

Varchar

 

3、4节课程

6

Node56

Varchar

 

5、6节课程

7

Node78

Varchar

 

7、8节课程

8

Node90

Varchar

 

9、10节课程

9

Address12

Varchar

 

1、2节地点

10

Address 34

Varchar

 

3、4节地点

11

Address 56

Varchar

 

5、6节地点

12

Address 78

Varchar

 

7、8节地点

13

Address 90

Varchar

 

9、10节地点表

 

工程文件结构设计

在程序开发阶段,首先确定“即基于Android的学习管理系统”的工程名称为StudyManagement,根据程序模块设计的内容,建立StudyManagement项目, StudyManagement项目的文件结构如图

为了使代码文件结构更加清晰, StudyManagement工程设置了多个命名空间,分别保存了用户界面、数据适配器、常用类库和实体多个包,源代码的名称以及说明如表4.3所示:

包名称

文件名

说明

com.cm.activity

LoginActivity.java

登录界面视图

com.cm.activity

RegisterActivity.java

注册界面视图

com.cm.activity

StudyPlanActivity.java

计划界面视图

com.cm.activity

DialogEditActivity.java

课程设置界面视图

com.cm.activity

CourseListActivity.java

课程列表视图

课表查询界面

用户打开软件进入系统后,可以看到每一周的课程安排信息,可以通过手指滑动来切换不同周次的课程信息。

在课程信息表里,第一行显示了周一到周日标题,第一列显示了一天五个课节信息,而表格主体部分则显示了每一天每个节次所上的课程信息。

具体的实现效果如图

核心代码:

@Override private LinearLayout createView(int cur_week) { LinearLayout llRoot = new LinearLayout(this); llRoot.setOrientation(LinearLayout.VERTICAL); lParams = new LinearLayout.LayoutParams(width, width); lParams.leftMargin = 2; lParams.topMargin = 2; llLayout = new LinearLayout(this); llLayout.setOrientation(LinearLayout.HORIZONTAL); for (int i = 0; i < AppConstant.Weeks.length + 1; i++) { textView = new TextView(this); textView.setText(i == 0 ? "" : AppConstant.Weeks[i - 1]); textView.setGravity(Gravity.CENTER); textView.setTextColor(getResources().getColor(R.color.gray12)); textView.setBackgroundColor(getResources().getColor(R.color.gray2)); textView.setLayoutParams(lParams); llLayout.addView(textView); } llRoot.addView(llLayout); for (int i = 0; i < AppConstant.Sessions.length; i++) { llLayout = new LinearLayout(this); llLayout.setOrientation(LinearLayout.HORIZONTAL); textView = new TextView(this); textView.setText(AppConstant.Sessions[i]); textView.setGravity(Gravity.CENTER); textView.setTextColor(getResources().getColor(R.color.gray12)); textView.setBackgroundColor(getResources().getColor(R.color.gray2)); textView.setLayoutParams(lParams); llLayout.addView(textView); for (int j = 0; j < AppConstant.Weeks.length; j++) { textView = new TextView(this); llLayout.setGravity(Gravity.CENTER); textView.setTextColor(getResources().getColor(R.color.gray8)); textView.setTextSize(10); textView.setBackgroundColor(getResources().getColor(R.color.gray1)); textView.setLayoutParams(lParams); textView.setOnClickListener(onClickListener); for (int j2 = 0; j2 < list.size(); j2++) { if (list.get(j2).getWeeks() == cur_week && list.get(j2).getWeekindex() == (j + 1)) { textView.setTag(list.get(j2).get_id() + "," + i); switch (i) { case 0: textView.setText(list.get(j2).getNode12()); break; case 1: textView.setText(list.get(j2).getNode34()); break; case 2: textView.setText(list.get(j2).getNode56()); break; case 3: textView.setText(list.get(j2).getNode78()); break; case 4: textView.setText(list.get(j2).getNode90()); break; } break; } } llLayout.addView(textView); } llRoot.addView(llLayout); } return llRoot; } 课表设置界面

用户在课表查询界面里点击一个单元格可以修改课程信息,包括课程名称和上课地点信息,修改之后可以通过电脑机保存按钮来把修改结果提交到数据库。

如果修改成功,则在课程查询模块里可以查询到刚刚修改的信息;

具体的实现效果如图

学习规划界面

用户可以在系统上记录自己的学习计划,例如用户即可计划某一段时间的学习内容。

具体的实现效果如图

总结界面

用户可以对过去的学习效果进行总结,并可以通过软件记录到手机里。

具体的实现效果如图

需要请联系微信zlee_com_cn

 

感谢打赏,手动狗头;)

        



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3