基于Android的课程表系统_第1页
基于Android的课程表系统_第2页
基于Android的课程表系统_第3页
基于Android的课程表系统_第4页
基于Android的课程表系统_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 基于Android的课程表系统一、介绍:课程表是每一个学生日不可少的东西,目前我们还是依赖于纸质,一方面不便捷,另一方面在智能设备如此发达的时代已无法适应各种需求。因此我以课程表作为开发项目,力求能在现实中为广大用户提供便利。我的课程表系统实现了基本的课程录入显示功能,并且界面整洁方便操作,且能够计算当前日期的学期周数。二、系统设计:Main是系统的主框架,调用系统的全部功能。课程表星期的切换、显示和设置的调用。ScheduleInsert是对课程表的遍历、修改和保存。TodayDateSetting是设置系统的实现。GetSchedule是从数据库读取数据遍历课程表的实现类。ToDoDB是

2、SQLiteOpenHelper的子类,是保存课程表的数据结构。三、核心功能设计:public class Main extends TabActivity public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.main_tab_layout1); /init(savedInstanceState); InitImageView(); InitTextView(); InitViewPager(); inti(); /* * 初始化头

3、标 */public void onStart(). private void InitTextView() . /* * 初始化ViewPager */ private void InitViewPager() . private void InitImageView() . /* * ViewPager适配器 */ public class MyPagerAdapter extends PagerAdapter . private void inti() . /* * 头标点击监听 */ public class MyOnClickListener implements View.OnCl

4、ickListener . /* * 页卡切换监听 */ public class MyOnPageChangeListener implements OnPageChangeListener ./设置选项 public boolean onPrepareOptionsMenu(Menu menu) . Override public boolean onOptionsItemSelected(MenuItem item) . Override public boolean onKeyDown(int keyCode, KeyEvent event) .public class Schedul

5、eInsert extends Activity implements android.view.View.OnClickListener Override protected void onCreate(Bundle savedInstanceState) /遍历游标 11. while (!mCursor.isAfterLast() /获得ID coursei=mCursor.getString(3); addi=mCursor.getString(4); i+; mCursor.moveToNext(); /给edittext赋初值 for (int i = 0; i 6; i+) et

6、_2EditTexts.get(i).setHint(课程名称) ; et_3EditTexts.get(i).setHint(上课地点) ; et_2EditTexts.get(i).setText(coursei); et_3EditTexts.get(i).setText(addi); private void InitTextView() . public class MyOnClickListener implements View.OnClickListener . Override public void onClick(View v) . private void editTo

7、do() mCursor.moveToFirst(); _id=mCursor.getInt(0); /* 修改数据 */ for (int i=0; i 6; i+) toDoDB.updateCourse(_id,getEditText_2(i); toDoDB.updateAdd(_id, getEditText_3(i); _id+; _id = 0; private String getEditText_2(int index) . private String getEditText_3(int index) . Override protected void onDestroy(

8、) . Override public boolean onKeyDown(int keyCode, KeyEvent event) .public class GetSchedule public View getScheduleView(int week) View myView = mInflater.inflate(R.layout.app_schedule_show_page, null); SQLiteDatabase db; toDoDB=new ToDoDB(context); db=toDoDB.getReadableDatabase(); String sql=select

9、 * from todo_schedule where todo_week=+week;/1为星期一 mCursor =db.rawQuery(sql, null); Log.i(, sql); /判断游标是否为空 if(mCursor !=null ) int i=0,n=mCursor .getCount(); mCursor .moveToFirst(); Log.i(, mCursor !=null); Log.i(n=?, n+); /遍历游标 11. tv1_2.setText(course0);. tv6_3.setText(add5); Log.i(tv, 已设置tv); mC

10、ursor .close(); toDoDB.close(); return myView; public class ToDoDB extends SQLiteOpenHelper private final static String DATABASE_NAME = todo_db; private final static int DATABASE_VERSION = 3; private final String REMIND_TABLE = todo_table; private final String SCHEDULE_TABLE = todo_schedule; public

11、final String FIELD_id = _id; public final String REMIND_TV = todo_remind; public final String REMIND_TIME = todo_remind_time; public final String REMIND_TIME_ID = todo_remind_timeId; public final String SCHEDULE_WEEK = todo_week; public final String SCHEDULE_TV1 = todo_section; public final String S

12、CHEDULE_TV2 = todo_course; public final String SCHEDULE_TV3 = todo_add; / public SQLiteDatabase db; public ToDoDB(Context context) super(context, DATABASE_NAME, null, DATABASE_VERSION); Override public void onCreate(SQLiteDatabase db) / / TODO Auto-generated method stub /* 建立table */ String sql = CR

13、EATE TABLE + REMIND_TABLE + ( + FIELD_id + INTEGER primary key autoincrement, + REMIND_TV + text, + REMIND_TIME + text, + REMIND_TIME_ID + text + ); Log.i(ToDoDB, sql1代码如下:+sql); db.execSQL(sql); sql = CREATE TABLE + SCHEDULE_TABLE + ( + FIELD_id + INTEGER primary key autoincrement, + + SCHEDULE_WEE

14、K + text, + SCHEDULE_TV1 + text, + SCHEDULE_TV2 + text, + SCHEDULE_TV3 + text ); Log.i(ToDoDB, sql2代码如下:+sql); db.execSQL(sql); try db.execSQL(drop table todo_schedule); db.execSQL(create table if not exists todo_schedule(_id int primary key,todo_week int,todo_section int,todo_course varchar,todo_ad

15、d varchar); db.execSQL(insert into todo_schedule(_id,todo_week,todo_section,todo_course,todo_add) values(1,1,1,);.todo_schedule(_id,todo_week,todo_section,todo_course,todo_add) values(30,5,6,); Log.i(, 已初始化数据库); catch (Exception e) / TODO: handle exception public void delete(int id,String table) . public void updateCourse(int id, String text) . public void updateAdd(int id, String text) .O

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论