基于Android的学习管理系统设计与开发 |
您所在的位置:网站首页 › 爱学生手机管理系统 › 基于Android的学习管理系统设计与开发 |
本次设计选用了时下比较热门的Android平台来作为开发技术,实现了一套较为实用的学习管理系统。在校学生可以通过本软件来记录每一天的上课课程信息,记录学习信息等等。 1.开发工具及环境简介 Eclipse Classic 3.7.2SQLite3ADTAndroid SDK2.系统功能需求 课程表的创建与查询课程信息的创建与查询课程学习时间的设定与管理(相当于学习计划)学习效果的反馈与总结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 |