程序员人生 网站导航

Android简单的学生管理系统

栏目:综合技术时间:2015-04-22 08:13:19

(1)管理系统实现的功能主要是:学生、教师的注册登录,和选课,和修改学生的成绩等基本简单的功能,最主要的是实现1些Dialog的使用。
界面以下:
这里写图片描述
这里写图片描述
这里写图片描述

这里写图片描述

(2)主要代码以下:(个人留作笔记,如需要完全代码,在最下边免费下载)

下边是1个适配器,适配器是为了1个listvie进行设置值,其中加载的是1个itemview,适配器中还是用了继承的方法,用于通知适配器进行更新。

public class CourseAdapter extends BaseAdapter { private Context context; private List<Course> coursetList; public CourseAdapter(Context context, List<Course> coursetList) { this.context = context; this.coursetList = coursetList; } public int getCount() { return coursetList.size(); } public Object getItem(int position) { return coursetList.get(position); } public long getItemId(int position) { return position; } /** * 通知adapter更新数据 */ @Override public void notifyDataSetChanged() { super.notifyDataSetChanged(); } public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { //这里加载的每个item条目的布局文件 convertView = LayoutInflater.from(context).inflate( R.layout.student_score_item, null); } TextView tv_name = (TextView) convertView.findViewById(R.id.tv_name); TextView tv_course = (TextView) convertView .findViewById(R.id.tv_course); TextView tv_score = (TextView) convertView.findViewById(R.id.tv_score); // 取得某1个位置的student Course course = coursetList.get(position); tv_name.setText(course.getStudentName() + ""); tv_course.setText(course.getCourseName() + ""); tv_score.setText(course.getCourseSocre() + ""); return convertView; } }

(3)还用到了Java的反射机制,结合工厂模式进行操作:

public class PersonFactory { /** * 根据类的名称来生产对象:java的反射机制使用 * * @param className * @return */ public PersonInter getPersonByClass(String className) { try { PersonInter personInter = (PersonInter) Class.forName(className).newInstance(); return personInter; } catch (InstantiationException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (ClassNotFoundException e) { e.printStackTrace(); } return null; } /** * 根据类型来创建对象 */ public PersonInter getHair(String key) { if ("student".equals(key)) { return new StudentImpl(); } else if ("teacher".equals(key)) { return new TeacherImpl(); } return null; } /** * 根据类的名称来生产对象:java的映照 */ public PersonInter getPersonByClassKey(String key) { try { Map<String, String> map = new PropertiesReader().getProperties(); PersonInter person = (PersonInter) Class.forName(map.get(key)).newInstance(); return person; } catch (InstantiationException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (ClassNotFoundException e) { e.printStackTrace(); } return null; } }

项目源码下载地址:http://yunpan.cn/cVHSjNCeRxZqV 访问密码 96dd

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐