毕业设计- 基于Android的课程表APP
时间:2022-03-07 07:10:28 阅读数:70,012人阅读
作者:Android学习小站
版权声明:转载请注明出处,谢谢!
—— 这个世界,一百万人里面只有一个主角。当主角的都是能够达到极致的人。
项目介绍
本系统用于管理大学课程,用户可添加每天课程信息如课程名称、教师、上课地点、上课周数和节数等
1. 添加课程 进入系统后,可选择添加第几周的课程信息,默认第1周开始,点击空白处如点击周一、第一节处的空白处即可添加课程信息,输入课程信息后并选择上课信息如单周、双周、自定义第几周点击保存即可添加课程成功,成功后在课程表上可查看课程信息,也可点击课程进行编辑或删除课程表;
2. 查看课程 每添加完一节课程后都可查看相应课程信息,滑动屏幕查看更多节数课程,默认显示当前周的课程,也可点击顶部第1周切换查看相应周数的课程表信息;
3. 切换课程表 点击右上角更多按钮即可切换不同课程表;
4. 更换主题 系统支持更换不同颜色主题,点击相应主题即可切换不同风格的课程表;
项目截图
实现原理
布局文件activity_main.xml:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".mvp.course.CourseActivity"> <include layout="@layout/title_toolbar" /> <android.support.v7.widget.RecyclerView android:id="@+id/recycler_view_select_week" android:layout_width="match_parent" android:layout_height="45dp" android:orientation="horizontal" /> <LinearLayout android:id="@+id/layout_week_group" android:layout_width="match_parent" android:layout_height="40dp" android:background="@color/color_f6f8fa" android:orientation="horizontal" /> <ScrollView android:layout_width="match_parent" android:layout_height="match_parent" android:fadingEdge="none" android:overScrollMode="never" android:scrollbarSize="0dp" android:scrollbars="none"> <LinearLayout android:id="@+id/layout_course" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <LinearLayout android:id="@+id/layout_node_group" android:layout_width="28dp" android:layout_height="match_parent" android:orientation="vertical" /> <com.anxiaobang.schooltimetable.custom.course.CourseView android:id="@+id/course_view_v2" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout> </ScrollView> </LinearLayout>
/** * courseVIew事件 */ private void initCourseViewEvent() { mCourseViewV2.setOnItemClickListener(new CourseView.OnItemClickListener() { @Override public void onClick(Listcourse, View itemView) { mDialog = new ShowDetailDialog(); mDialog.show(CourseActivity.this, (CourseV2) course.get(0), new PopupWindow.OnDismissListener() { @Override public void onDismiss() { mDialog = null; } }); } @Override public void onLongClick(List courses, View itemView) { final CourseV2 course = (CourseV2) courses.get(0); DialogHelper dialogHelper = new DialogHelper(); dialogHelper.showNormalDialog(CourseActivity.this, getString(R.string.confirm_to_delete), "课程 【" + course.getCouName() + "】" + Constant.WEEK[course.getCouWeek()] + "第" + course.getCouStartNode() + "节 ", new DialogListener() { @Override public void onPositive(DialogInterface dialog, int which) { super.onPositive(dialog, which); deleteCancelSnackBar(course); } }); } public void onAdd(CourseAncestor course, View addView) { Intent intent = new Intent(CourseActivity.this, AddActivity.class); intent.putExtra(Constant.INTENT_ADD_COURSE_ANCESTOR, course); intent.putExtra(Constant.INTENT_ADD, true); startActivity(intent); } }); } /** * 撤销删除提示 */ private void deleteCancelSnackBar(final CourseV2 course) { course.setDisplayable(false); mCourseViewV2.resetView(); Snackbar.make(mMMonthTextView, "删除成功", Snackbar.LENGTH_LONG).setAction("撤销", new View.OnClickListener() { @Override public void onClick(View v) { } }).addCallback(new Snackbar.Callback() { @Override public void onDismissed(Snackbar snackbar, int event) { switch (event) { case Snackbar.Callback.DISMISS_EVENT_CONSECUTIVE: case Snackbar.Callback.DISMISS_EVENT_MANUAL: case Snackbar.Callback.DISMISS_EVENT_SWIPE: case Snackbar.Callback.DISMISS_EVENT_TIMEOUT: //to do delete mPresenter.deleteCourse(course.getCouId()); break; case Snackbar.Callback.DISMISS_EVENT_ACTION: //cancel course.setDisplayable(true); mCourseViewV2.resetView(); break; } } }).show(); }
购买套餐
权益 | 套餐A | 套餐B |
---|---|---|
完整代码 | ![]() |
![]() |
远程调试 | 不支持 | ![]() |
代码答疑 | 不支持 | ![]() |
价 格 | ¥220 | ¥360 |
------转载请注明出处,感谢您对原创作者的支持------
有偿提供技术支持、Bug修复、项目外包、毕业设计、大小作业
Android学习小站
Q Q:1095817610
微信:jx-helu
邮箱:1095817610@qq.com
添加请备注"Android学习小站"
