├── AndroidManifest.xml
├── Dayplan.png
├── README.md
├── assets
└── fonts
│ ├── EvernotePuck-Light.otf
│ ├── EvernotePuck-Regular.otf
│ └── RobotoSlab
│ ├── RobotoSlab-Bold.ttf
│ ├── RobotoSlab-Light.ttf
│ ├── RobotoSlab-Regular.ttf
│ └── RobotoSlab-Thin.ttf
├── bin
├── AndroidManifest.xml
├── DayPlan.apk
├── classes.dex
├── classes
│ └── cn
│ │ └── edu
│ │ └── zju
│ │ └── isee
│ │ └── www
│ │ └── dayplan
│ │ ├── AlarmActivity$1.class
│ │ ├── AlarmActivity.class
│ │ ├── BuildConfig.class
│ │ ├── DatePickerFragment$1.class
│ │ ├── DatePickerFragment$2.class
│ │ ├── DatePickerFragment.class
│ │ ├── DayPlanJSONSerializer.class
│ │ ├── ImageActivity.class
│ │ ├── ImageFragment.class
│ │ ├── ImageUtils.class
│ │ ├── Photo.class
│ │ ├── Plan.class
│ │ ├── PlanCameraActivity.class
│ │ ├── PlanCameraFragment$1.class
│ │ ├── PlanCameraFragment$2.class
│ │ ├── PlanCameraFragment$3.class
│ │ ├── PlanCameraFragment$4.class
│ │ ├── PlanCameraFragment.class
│ │ ├── PlanEditActivity.class
│ │ ├── PlanEditFragment$1.class
│ │ ├── PlanEditFragment$2.class
│ │ ├── PlanEditFragment$3.class
│ │ ├── PlanEditFragment$4.class
│ │ ├── PlanEditFragment$5.class
│ │ ├── PlanEditFragment$6.class
│ │ ├── PlanEditFragment$7$1.class
│ │ ├── PlanEditFragment$7.class
│ │ ├── PlanEditFragment$8.class
│ │ ├── PlanEditFragment.class
│ │ ├── PlanListActivity.class
│ │ ├── PlanListFragment$1.class
│ │ ├── PlanListFragment$PlanAdapter.class
│ │ ├── PlanListFragment.class
│ │ ├── PlanListScrollView$1.class
│ │ ├── PlanListScrollView.class
│ │ ├── PlanListView.class
│ │ ├── PlanPagerActivity$1.class
│ │ ├── PlanPagerActivity.class
│ │ ├── R$attr.class
│ │ ├── R$dimen.class
│ │ ├── R$drawable.class
│ │ ├── R$id.class
│ │ ├── R$layout.class
│ │ ├── R$menu.class
│ │ ├── R$string.class
│ │ ├── R$style.class
│ │ ├── R.class
│ │ ├── SingleActivity.class
│ │ ├── SinglePlanLab.class
│ │ ├── TypeSelectActivity.class
│ │ ├── TypeSelectFragment$1.class
│ │ ├── TypeSelectFragment.class
│ │ └── ZoomImageView.class
├── dexedLibs
│ └── android-support-v4-6b5e97bbca70b3d64cded5763cb4e47a.jar
├── jarlist.cache
├── res
│ └── crunch
│ │ ├── drawable-hdpi
│ │ ├── bottom_bar.9.png
│ │ ├── btn_know_nor.png
│ │ ├── btn_know_pre.png
│ │ ├── ic_launcher.png
│ │ ├── message_selected.png
│ │ ├── message_unselected.png
│ │ ├── news_selected.png
│ │ ├── news_unselected.png
│ │ ├── setting_unselected.png
│ │ ├── tab_bg.9.png
│ │ ├── tab_settings_normal.png
│ │ └── tab_settings_pressed.png
│ │ ├── drawable-mdpi
│ │ └── reminder.png
│ │ ├── drawable-xhdpi
│ │ └── ic_launcher.png
│ │ └── drawable-xxhdpi
│ │ └── ic_launcher.png
└── resources.ap_
├── gen
└── cn
│ └── edu
│ └── zju
│ └── isee
│ └── www
│ └── dayplan
│ ├── BuildConfig.java
│ └── R.java
├── ic_launcher-web.png
├── libs
└── android-support-v4.jar
├── proguard-project.txt
├── project.properties
├── res
├── drawable-hdpi
│ ├── bottom_bar.9.png
│ ├── btn_know_nor.png
│ ├── btn_know_pre.png
│ ├── ic_launcher.png
│ ├── message_selected.png
│ ├── message_unselected.png
│ ├── news_selected.png
│ ├── news_unselected.png
│ ├── setting_unselected.png
│ ├── tab_bg.9.png
│ ├── tab_settings_normal.png
│ └── tab_settings_pressed.png
├── drawable-mdpi
│ ├── background_snippet_nodivider.9.png
│ └── reminder.png
├── drawable-xhdpi
│ └── ic_launcher.png
├── drawable-xxhdpi
│ └── ic_launcher.png
├── drawable
│ └── background_activated.xml
├── layout
│ ├── activity_alarm.xml
│ ├── activity_fragment.xml
│ ├── activity_main.xml
│ ├── dialog_date.xml
│ ├── dialog_type.xml
│ ├── fragment_image.xml
│ ├── fragment_list_plan.xml
│ ├── fragment_plan_camera.xml
│ ├── fragment_plan_edit.xml
│ └── item_list_plan.xml
├── menu
│ ├── fragment_plan_list.xml
│ ├── main.xml
│ └── plan_list_item_context.xml
├── values-v11
│ └── styles.xml
├── values-v14
│ └── styles.xml
├── values-w820dp
│ └── dimens.xml
└── values
│ ├── dimens.xml
│ ├── ids.xml
│ ├── strings.xml
│ └── styles.xml
└── src
└── cn
└── edu
└── zju
└── isee
└── www
└── dayplan
├── AlarmActivity.java
├── DatePickerFragment.java
├── DayPlanJSONSerializer.java
├── ImageActivity.java
├── ImageFragment.java
├── ImageUtils.java
├── Photo.java
├── Plan.java
├── PlanCameraActivity.java
├── PlanCameraFragment.java
├── PlanEditActivity.java
├── PlanEditFragment.java
├── PlanListActivity.java
├── PlanListFragment.java
├── PlanListScrollView.java
├── PlanListView.java
├── PlanPagerActivity.java
├── SingleActivity.java
├── SinglePlanLab.java
├── TypeSelectActivity.java
├── TypeSelectFragment.java
└── ZoomImageView.java
/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
10 |
11 |
12 |
13 |
18 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
29 |
30 |
32 |
34 |
35 |
38 |
39 |
40 |
42 |
43 |
44 |
46 |
47 |
48 |
49 |
50 |
--------------------------------------------------------------------------------
/Dayplan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/Dayplan.png
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # DayPlan 时间管理APP
2 |
3 | ## 需求分析
4 |
5 | 当前,市场上有足够多的优秀日程管理应用,如Wunderlist等。这些应用大多提供日程记录、日程优先级、闹钟提醒、同步等功能。但这些应用的任务事项时间跨度都比较大、期限也比较长。这虽然有利于把握大的方向,但对于短期内效率的提高不一定有很好的效果。从另一个角度上看,养成良好的时间管理习惯,既需要着眼于长远的目标,也需要有具体的、可行的短期实践方案。所谓短期,我认为一天比较合适。
6 |
7 | 因此,DayPlan并不致力于像Wunderlist一样具有十分全面的功能,而是专注于为拖拉者做好一天(甚至更短)的规划,通过简单的提醒及时检查、纠偏,让拖拉者逐渐成长为高效的成功人士。
8 |
9 | ## 功能简介
10 |
11 | ### 规划功能
12 |
13 | 用户可以在前一天晚上做好第二天的规划,添加必要的任务事项,包括任务描述,任务的紧迫性(重要紧迫、重要不紧迫、紧迫不重要、不紧迫不重要),截止时间,并且可以添加一张相关的图片作为提示。
14 |
15 | ### 提醒功能
16 |
17 | 用户可以为每个事项添加提醒功能,每当截止时间到的时候,DayPlan给出一个简短的提醒。DayPlan致力于在提醒用户的同时不过分打扰用户。
18 |
19 | ### 分享功能
20 |
21 | DayPlan可以从某个任务生成一个描述该任务的字符串,并分享到其他应用。
22 |
23 | ## 系统架构
24 |
25 | - 模型层
26 |
27 | - 视图层
28 |
29 | - 控制层
30 |
31 | 
32 |
33 |
--------------------------------------------------------------------------------
/assets/fonts/EvernotePuck-Light.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/assets/fonts/EvernotePuck-Light.otf
--------------------------------------------------------------------------------
/assets/fonts/EvernotePuck-Regular.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/assets/fonts/EvernotePuck-Regular.otf
--------------------------------------------------------------------------------
/assets/fonts/RobotoSlab/RobotoSlab-Bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/assets/fonts/RobotoSlab/RobotoSlab-Bold.ttf
--------------------------------------------------------------------------------
/assets/fonts/RobotoSlab/RobotoSlab-Light.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/assets/fonts/RobotoSlab/RobotoSlab-Light.ttf
--------------------------------------------------------------------------------
/assets/fonts/RobotoSlab/RobotoSlab-Regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/assets/fonts/RobotoSlab/RobotoSlab-Regular.ttf
--------------------------------------------------------------------------------
/assets/fonts/RobotoSlab/RobotoSlab-Thin.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/assets/fonts/RobotoSlab/RobotoSlab-Thin.ttf
--------------------------------------------------------------------------------
/bin/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
10 |
11 |
12 |
13 |
18 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
29 |
30 |
32 |
34 |
35 |
38 |
39 |
40 |
42 |
43 |
44 |
46 |
47 |
48 |
49 |
50 |
--------------------------------------------------------------------------------
/bin/DayPlan.apk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/DayPlan.apk
--------------------------------------------------------------------------------
/bin/classes.dex:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes.dex
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/AlarmActivity$1.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/AlarmActivity$1.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/AlarmActivity.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/AlarmActivity.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/BuildConfig.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/BuildConfig.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/DatePickerFragment$1.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/DatePickerFragment$1.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/DatePickerFragment$2.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/DatePickerFragment$2.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/DatePickerFragment.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/DatePickerFragment.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/DayPlanJSONSerializer.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/DayPlanJSONSerializer.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/ImageActivity.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/ImageActivity.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/ImageFragment.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/ImageFragment.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/ImageUtils.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/ImageUtils.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/Photo.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/Photo.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/Plan.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/Plan.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanCameraActivity.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanCameraActivity.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanCameraFragment$1.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanCameraFragment$1.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanCameraFragment$2.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanCameraFragment$2.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanCameraFragment$3.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanCameraFragment$3.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanCameraFragment$4.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanCameraFragment$4.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanCameraFragment.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanCameraFragment.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditActivity.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditActivity.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$1.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$1.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$2.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$2.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$3.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$3.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$4.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$4.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$5.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$5.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$6.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$6.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$7$1.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$7$1.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$7.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$7.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$8.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment$8.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanEditFragment.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanListActivity.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanListActivity.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanListFragment$1.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanListFragment$1.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanListFragment$PlanAdapter.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanListFragment$PlanAdapter.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanListFragment.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanListFragment.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanListScrollView$1.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanListScrollView$1.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanListScrollView.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanListScrollView.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanListView.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanListView.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanPagerActivity$1.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanPagerActivity$1.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/PlanPagerActivity.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/PlanPagerActivity.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/R$attr.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/R$attr.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/R$dimen.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/R$dimen.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/R$drawable.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/R$drawable.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/R$id.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/R$id.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/R$layout.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/R$layout.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/R$menu.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/R$menu.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/R$string.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/R$string.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/R$style.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/R$style.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/R.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/R.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/SingleActivity.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/SingleActivity.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/SinglePlanLab.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/SinglePlanLab.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/TypeSelectActivity.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/TypeSelectActivity.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/TypeSelectFragment$1.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/TypeSelectFragment$1.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/TypeSelectFragment.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/TypeSelectFragment.class
--------------------------------------------------------------------------------
/bin/classes/cn/edu/zju/isee/www/dayplan/ZoomImageView.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/classes/cn/edu/zju/isee/www/dayplan/ZoomImageView.class
--------------------------------------------------------------------------------
/bin/dexedLibs/android-support-v4-6b5e97bbca70b3d64cded5763cb4e47a.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/dexedLibs/android-support-v4-6b5e97bbca70b3d64cded5763cb4e47a.jar
--------------------------------------------------------------------------------
/bin/jarlist.cache:
--------------------------------------------------------------------------------
1 | # cache for current jar dependency. DO NOT EDIT.
2 | # format is
3 | # Encoding is UTF-8
4 |
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-hdpi/bottom_bar.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-hdpi/bottom_bar.9.png
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-hdpi/btn_know_nor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-hdpi/btn_know_nor.png
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-hdpi/btn_know_pre.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-hdpi/btn_know_pre.png
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-hdpi/message_selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-hdpi/message_selected.png
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-hdpi/message_unselected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-hdpi/message_unselected.png
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-hdpi/news_selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-hdpi/news_selected.png
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-hdpi/news_unselected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-hdpi/news_unselected.png
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-hdpi/setting_unselected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-hdpi/setting_unselected.png
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-hdpi/tab_bg.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-hdpi/tab_bg.9.png
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-hdpi/tab_settings_normal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-hdpi/tab_settings_normal.png
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-hdpi/tab_settings_pressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-hdpi/tab_settings_pressed.png
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-mdpi/reminder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-mdpi/reminder.png
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/bin/res/crunch/drawable-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/res/crunch/drawable-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/bin/resources.ap_:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/bin/resources.ap_
--------------------------------------------------------------------------------
/gen/cn/edu/zju/isee/www/dayplan/BuildConfig.java:
--------------------------------------------------------------------------------
1 | /** Automatically generated file. DO NOT MODIFY */
2 | package cn.edu.zju.isee.www.dayplan;
3 |
4 | public final class BuildConfig {
5 | public final static boolean DEBUG = true;
6 | }
--------------------------------------------------------------------------------
/gen/cn/edu/zju/isee/www/dayplan/R.java:
--------------------------------------------------------------------------------
1 | /* AUTO-GENERATED FILE. DO NOT MODIFY.
2 | *
3 | * This class was automatically generated by the
4 | * aapt tool from the resource data it found. It
5 | * should not be modified by hand.
6 | */
7 |
8 | package cn.edu.zju.isee.www.dayplan;
9 |
10 | public final class R {
11 | public static final class attr {
12 | }
13 | public static final class dimen {
14 | /** Default screen margins, per the Android Design guidelines.
15 |
16 | Example customization of dimensions originally defined in res/values/dimens.xml
17 | (such as screen margins) for screens with more than 820dp of available width. This
18 | would include 7" and 10" devices in landscape (~960dp and ~1280dp respectively).
19 |
20 | */
21 | public static final int activity_horizontal_margin=0x7f040000;
22 | public static final int activity_vertical_margin=0x7f040001;
23 | }
24 | public static final class drawable {
25 | public static final int background_activated=0x7f020000;
26 | public static final int background_snippet_nodivider=0x7f020001;
27 | public static final int bottom_bar=0x7f020002;
28 | public static final int btn_know_nor=0x7f020003;
29 | public static final int btn_know_pre=0x7f020004;
30 | public static final int ic_launcher=0x7f020005;
31 | public static final int message_selected=0x7f020006;
32 | public static final int message_unselected=0x7f020007;
33 | public static final int news_selected=0x7f020008;
34 | public static final int news_unselected=0x7f020009;
35 | public static final int reminder=0x7f02000a;
36 | public static final int setting_unselected=0x7f02000b;
37 | public static final int tab_bg=0x7f02000c;
38 | public static final int tab_settings_normal=0x7f02000d;
39 | public static final int tab_settings_pressed=0x7f02000e;
40 | }
41 | public static final class id {
42 | public static final int action_settings=0x7f05002c;
43 | public static final int contacts_image=0x7f050007;
44 | public static final int contacts_layout=0x7f050006;
45 | public static final int contacts_text=0x7f050008;
46 | public static final int content=0x7f050002;
47 | public static final int dialog_date_datePicker=0x7f05000f;
48 | public static final int first_column=0x7f050016;
49 | public static final int fragmentContainer=0x7f050001;
50 | public static final int image=0x7f050014;
51 | public static final int menu_item_delete_plan=0x7f05002d;
52 | public static final int menu_item_new_plan=0x7f05002b;
53 | public static final int message_image=0x7f050004;
54 | public static final int message_layout=0x7f050003;
55 | public static final int message_text=0x7f050005;
56 | public static final int news_image=0x7f05000a;
57 | public static final int news_layout=0x7f050009;
58 | public static final int news_text=0x7f05000b;
59 | public static final int plan_alarmButton=0x7f050020;
60 | public static final int plan_camera_progressContainer=0x7f05001b;
61 | public static final int plan_camera_surfaceView=0x7f050019;
62 | public static final int plan_camera_takePictureButton=0x7f05001a;
63 | public static final int plan_date=0x7f05001f;
64 | public static final int plan_imageButton=0x7f05001d;
65 | public static final int plan_imageView=0x7f05001c;
66 | public static final int plan_list_image=0x7f050028;
67 | public static final int plan_list_isSolved=0x7f050027;
68 | public static final int plan_list_item_detailTextView=0x7f05002a;
69 | public static final int plan_list_item_titleTextView=0x7f050029;
70 | public static final int plan_list_typeImageView=0x7f050026;
71 | public static final int plan_scroll_view=0x7f050015;
72 | public static final int plan_shareButton=0x7f050022;
73 | public static final int plan_solved=0x7f050021;
74 | public static final int plan_staticButton=0x7f050023;
75 | public static final int plan_title=0x7f05001e;
76 | public static final int plan_typeImageView=0x7f050024;
77 | public static final int plan_typeTextView=0x7f050025;
78 | public static final int second_column=0x7f050017;
79 | public static final int setting_image=0x7f05000d;
80 | public static final int setting_layout=0x7f05000c;
81 | public static final int setting_text=0x7f05000e;
82 | public static final int third_column=0x7f050018;
83 | public static final int type_important_easyTextView=0x7f050012;
84 | public static final int type_important_urgentTextView=0x7f050010;
85 | public static final int type_unimportant_easyTextView=0x7f050013;
86 | public static final int type_unimportant_urgentTextView=0x7f050011;
87 | public static final int viewPaper=0x7f050000;
88 | }
89 | public static final class layout {
90 | public static final int activity_alarm=0x7f030000;
91 | public static final int activity_fragment=0x7f030001;
92 | public static final int activity_main=0x7f030002;
93 | public static final int dialog_date=0x7f030003;
94 | public static final int dialog_type=0x7f030004;
95 | public static final int fragment_image=0x7f030005;
96 | public static final int fragment_list_plan=0x7f030006;
97 | public static final int fragment_plan_camera=0x7f030007;
98 | public static final int fragment_plan_edit=0x7f030008;
99 | public static final int item_list_plan=0x7f030009;
100 | }
101 | public static final class menu {
102 | public static final int fragment_plan_list=0x7f080000;
103 | public static final int main=0x7f080001;
104 | public static final int plan_list_item_context=0x7f080002;
105 | }
106 | public static final class string {
107 | public static final int action_settings=0x7f060002;
108 | public static final int analyse=0x7f06000e;
109 | public static final int app_name=0x7f060000;
110 | public static final int date_picker_title=0x7f060007;
111 | public static final int delete_plan=0x7f06000b;
112 | public static final int hello_world=0x7f060001;
113 | public static final int hide_subtitle=0x7f06000a;
114 | public static final int new_plan=0x7f060008;
115 | public static final int ok=0x7f06000f;
116 | public static final int plan_solved_label=0x7f060006;
117 | public static final int plan_time_label=0x7f060005;
118 | public static final int plan_title_hint=0x7f060004;
119 | public static final int plan_title_label=0x7f060003;
120 | public static final int share=0x7f06000d;
121 | public static final int show_subtitle=0x7f060009;
122 | public static final int take=0x7f06000c;
123 | public static final int type_dialog_title=0x7f060015;
124 | public static final int type_important_easy=0x7f060012;
125 | public static final int type_important_urgent=0x7f060011;
126 | public static final int type_select_title=0x7f060010;
127 | public static final int type_unimportant_easy=0x7f060014;
128 | public static final int type_unimportant_urgent=0x7f060013;
129 | }
130 | public static final class style {
131 | /**
132 | Base application theme, dependent on API level. This theme is replaced
133 | by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
134 |
135 |
136 | Theme customizations available in newer API levels can go in
137 | res/values-vXX/styles.xml, while customizations related to
138 | backward-compatibility can go here.
139 |
140 |
141 | Base application theme for API 11+. This theme completely replaces
142 | AppBaseTheme from res/values/styles.xml on API 11+ devices.
143 |
144 | API 11 theme customizations can go here.
145 |
146 | Base application theme for API 14+. This theme completely replaces
147 | AppBaseTheme from BOTH res/values/styles.xml and
148 | res/values-v11/styles.xml on API 14+ devices.
149 |
150 | API 14 theme customizations can go here.
151 | */
152 | public static final int AppBaseTheme=0x7f070000;
153 | /** Application theme.
154 | All customizations that are NOT specific to a particular API-level can go here.
155 | */
156 | public static final int AppTheme=0x7f070001;
157 | }
158 | }
159 |
--------------------------------------------------------------------------------
/ic_launcher-web.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/ic_launcher-web.png
--------------------------------------------------------------------------------
/libs/android-support-v4.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/libs/android-support-v4.jar
--------------------------------------------------------------------------------
/proguard-project.txt:
--------------------------------------------------------------------------------
1 | # To enable ProGuard in your project, edit project.properties
2 | # to define the proguard.config property as described in that file.
3 | #
4 | # Add project specific ProGuard rules here.
5 | # By default, the flags in this file are appended to flags specified
6 | # in ${sdk.dir}/tools/proguard/proguard-android.txt
7 | # You can edit the include path and order by changing the ProGuard
8 | # include property in project.properties.
9 | #
10 | # For more details, see
11 | # http://developer.android.com/guide/developing/tools/proguard.html
12 |
13 | # Add any project specific keep options here:
14 |
15 | # If your project uses WebView with JS, uncomment the following
16 | # and specify the fully qualified class name to the JavaScript interface
17 | # class:
18 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
19 | # public *;
20 | #}
21 |
--------------------------------------------------------------------------------
/project.properties:
--------------------------------------------------------------------------------
1 | # This file is automatically generated by Android Tools.
2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED!
3 | #
4 | # This file must be checked in Version Control Systems.
5 | #
6 | # To customize properties used by the Ant build system edit
7 | # "ant.properties", and override values to adapt the script to your
8 | # project structure.
9 | #
10 | # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
11 | #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
12 |
13 | # Project target.
14 | target=android-19
15 |
--------------------------------------------------------------------------------
/res/drawable-hdpi/bottom_bar.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-hdpi/bottom_bar.9.png
--------------------------------------------------------------------------------
/res/drawable-hdpi/btn_know_nor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-hdpi/btn_know_nor.png
--------------------------------------------------------------------------------
/res/drawable-hdpi/btn_know_pre.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-hdpi/btn_know_pre.png
--------------------------------------------------------------------------------
/res/drawable-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/res/drawable-hdpi/message_selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-hdpi/message_selected.png
--------------------------------------------------------------------------------
/res/drawable-hdpi/message_unselected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-hdpi/message_unselected.png
--------------------------------------------------------------------------------
/res/drawable-hdpi/news_selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-hdpi/news_selected.png
--------------------------------------------------------------------------------
/res/drawable-hdpi/news_unselected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-hdpi/news_unselected.png
--------------------------------------------------------------------------------
/res/drawable-hdpi/setting_unselected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-hdpi/setting_unselected.png
--------------------------------------------------------------------------------
/res/drawable-hdpi/tab_bg.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-hdpi/tab_bg.9.png
--------------------------------------------------------------------------------
/res/drawable-hdpi/tab_settings_normal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-hdpi/tab_settings_normal.png
--------------------------------------------------------------------------------
/res/drawable-hdpi/tab_settings_pressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-hdpi/tab_settings_pressed.png
--------------------------------------------------------------------------------
/res/drawable-mdpi/background_snippet_nodivider.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-mdpi/background_snippet_nodivider.9.png
--------------------------------------------------------------------------------
/res/drawable-mdpi/reminder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-mdpi/reminder.png
--------------------------------------------------------------------------------
/res/drawable-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/res/drawable-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/res/drawable-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/res/drawable/background_activated.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
--------------------------------------------------------------------------------
/res/layout/activity_alarm.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/res/layout/activity_fragment.xml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
11 |
12 |
13 |
17 |
18 |
23 |
24 |
29 |
30 |
36 |
37 |
44 |
45 |
46 |
47 |
52 |
53 |
58 |
59 |
65 |
66 |
73 |
74 |
75 |
76 |
81 |
82 |
87 |
88 |
94 |
95 |
102 |
103 |
104 |
105 |
110 |
111 |
116 |
117 |
123 |
124 |
131 |
132 |
133 |
134 |
135 |
--------------------------------------------------------------------------------
/res/layout/dialog_date.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/res/layout/dialog_type.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
15 |
16 |
23 |
30 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/res/layout/fragment_image.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
--------------------------------------------------------------------------------
/res/layout/fragment_list_plan.xml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
10 |
11 |
18 |
19 |
20 |
26 |
27 |
28 |
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/res/layout/fragment_plan_camera.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
11 |
12 |
18 |
19 | "
25 |
26 |
27 |
32 |
33 | "
39 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/res/layout/fragment_plan_edit.xml:
--------------------------------------------------------------------------------
1 |
5 |
11 |
12 |
17 |
18 | "
26 |
31 |
32 |
33 |
39 |
44 |
52 |
53 |
54 |
55 |
56 |
61 |
67 |
74 |
75 |
81 |
88 |
89 |
90 |
97 |
98 |
106 |
114 |
115 |
121 |
125 |
126 |
127 |
128 |
134 |
138 |
143 |
149 |
150 | "
151 |
152 |
--------------------------------------------------------------------------------
/res/layout/item_list_plan.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
14 |
15 |
20 |
21 |
33 |
34 |
41 |
42 |
53 |
54 |
66 |
67 |
68 |
69 |
70 |
--------------------------------------------------------------------------------
/res/menu/fragment_plan_list.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
--------------------------------------------------------------------------------
/res/menu/main.xml:
--------------------------------------------------------------------------------
1 |
12 |
--------------------------------------------------------------------------------
/res/menu/plan_list_item_context.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
--------------------------------------------------------------------------------
/res/values-v11/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/res/values-v14/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 | 64dp
9 |
10 |
11 |
--------------------------------------------------------------------------------
/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 16dp
5 | 16dp
6 |
7 |
8 |
--------------------------------------------------------------------------------
/res/values/ids.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | DayPlan
5 | Hello world!
6 | Settings
7 | 任务
8 | 请输入任务标题
9 | 截止时间
10 | 已完成
11 | 任务时间
12 | 新建任务
13 | 显示子标题
14 | 隐藏子标题
15 | 删除
16 | OK
17 | 分享
18 | 统计
19 | 确认
20 | 任务类型
21 | 重要且紧迫
22 | 重要不紧迫
23 | 紧迫不重要
24 | 不重要不紧迫
25 | 任务类型
26 |
27 |
--------------------------------------------------------------------------------
/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
14 |
15 |
16 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/src/cn/edu/zju/isee/www/dayplan/AlarmActivity.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/src/cn/edu/zju/isee/www/dayplan/AlarmActivity.java
--------------------------------------------------------------------------------
/src/cn/edu/zju/isee/www/dayplan/DatePickerFragment.java:
--------------------------------------------------------------------------------
1 | package cn.edu.zju.isee.www.dayplan;
2 |
3 | import java.util.Calendar;
4 | import java.util.Date;
5 | import java.util.GregorianCalendar;
6 |
7 | import android.app.Activity;
8 | import android.app.AlertDialog;
9 | import android.app.Dialog;
10 | import android.content.DialogInterface;
11 | import android.content.Intent;
12 | import android.os.Bundle;
13 | import android.support.v4.app.DialogFragment;
14 | import android.view.View;
15 | import android.widget.DatePicker;
16 | import android.widget.DatePicker.OnDateChangedListener;
17 |
18 | public class DatePickerFragment extends DialogFragment{
19 | public static final String EXTRA_DATE="DayPlan.date";
20 |
21 | private Date mDate=new Date();
22 |
23 | public static DatePickerFragment newInstance(Date date){
24 | Bundle args=new Bundle();
25 | args.putSerializable(EXTRA_DATE, date);
26 |
27 | DatePickerFragment fragment=new DatePickerFragment();
28 | fragment.setArguments(args);
29 |
30 | return fragment;
31 | }
32 |
33 | @Override
34 | public Dialog onCreateDialog(Bundle savedInstanceState) {
35 | mDate=(Date)getArguments().getSerializable(EXTRA_DATE);
36 |
37 | Calendar calendar=Calendar.getInstance();
38 | calendar.setTime(mDate);
39 | final int year=calendar.get(Calendar.YEAR);
40 | final int month=calendar.get(Calendar.MONTH);
41 | final int day=calendar.get(Calendar.DAY_OF_MONTH);
42 |
43 | View v=getActivity().getLayoutInflater()
44 | .inflate(R.layout.dialog_date, null);
45 | DatePicker datePicker=(DatePicker)v.findViewById(R.id.dialog_date_datePicker);
46 | datePicker.init(year,month,day,new OnDateChangedListener() {
47 |
48 | @Override
49 | public void onDateChanged(DatePicker view, int year, int monthOfYear,
50 | int dayOfMonth) {
51 | mDate=new GregorianCalendar(year, monthOfYear, dayOfMonth).getTime();
52 |
53 | getArguments().putSerializable(EXTRA_DATE, mDate);
54 | }
55 | });
56 |
57 | return new AlertDialog.Builder(getActivity())
58 | .setView(v)
59 | .setTitle(R.string.date_picker_title)
60 | .setPositiveButton(android.R.string.ok,
61 | new DialogInterface.OnClickListener() {
62 | @Override
63 | public void onClick(DialogInterface dialog, int which) {
64 | sendResult(Activity.RESULT_OK);
65 | }
66 | })
67 | .create();
68 |
69 | }
70 |
71 | private void sendResult(int resultCode){
72 | if(getTargetFragment()==null){
73 | return ;
74 | }
75 | Intent i=new Intent();
76 | i.putExtra(EXTRA_DATE, mDate);
77 |
78 | getTargetFragment().onActivityResult(getTargetRequestCode(), resultCode, i);
79 |
80 | }
81 |
82 |
83 | }
84 |
--------------------------------------------------------------------------------
/src/cn/edu/zju/isee/www/dayplan/DayPlanJSONSerializer.java:
--------------------------------------------------------------------------------
1 | package cn.edu.zju.isee.www.dayplan;
2 |
3 | import java.io.BufferedReader;
4 | import java.io.FileNotFoundException;
5 | import java.io.IOException;
6 | import java.io.InputStream;
7 | import java.io.InputStreamReader;
8 | import java.io.OutputStream;
9 | import java.io.OutputStreamWriter;
10 | import java.io.Writer;
11 | import java.util.ArrayList;
12 |
13 | import org.json.JSONArray;
14 | import org.json.JSONException;
15 | import org.json.JSONTokener;
16 |
17 | import android.content.Context;
18 | import android.util.Log;
19 |
20 | public class DayPlanJSONSerializer {
21 | private static final String TAG ="DayPlanJSONSerializer";
22 | private Context mContext;
23 | private String mFileName;
24 |
25 | public DayPlanJSONSerializer(Context context,String fileName){
26 | mContext=context;
27 | mFileName=fileName;
28 | }
29 |
30 | public void savePlans(ArrayList plans)throws
31 | JSONException,IOException{
32 | //Build an array in JSON
33 | JSONArray array=new JSONArray();
34 | for(Plan t:plans){
35 | array.put(t.toJSON());
36 | }
37 |
38 | //Write to disk
39 | Writer writer=null;
40 | try{
41 | OutputStream out=mContext
42 | .openFileOutput(mFileName, Context.MODE_PRIVATE);
43 | writer=new OutputStreamWriter(out);
44 | writer.write(array.toString());
45 | }finally{
46 | if(writer!=null)
47 | writer.close();
48 | }
49 | }
50 |
51 | public ArrayList loadPlans()throws IOException,JSONException{
52 | ArrayListplans=new ArrayList();
53 | BufferedReader reader=null;
54 | try{
55 | //open and read the file into a StringBuilder
56 | InputStream in=mContext.openFileInput(mFileName);
57 | reader=new BufferedReader(new InputStreamReader(in));
58 | StringBuilder jsonString=new StringBuilder();
59 | String line=null;
60 | while((line=reader.readLine())!=null){
61 | //Line breaks are omitted and irrelevent
62 | jsonString.append(line);
63 | }
64 | //Parse the JSON using JSONTokener
65 | JSONArray array=(JSONArray)new JSONTokener(jsonString.toString()).nextValue();
66 | //Build the array of faces from jsonObjects
67 | for(int i=0;ireqHeight||width>reqWidth){
35 | final int halfHeight=height/2;
36 | final int halfWidth=width/2;
37 |
38 | while((halfHeight/inSampleSize)>reqHeight
39 | &&(halfWidth/inSampleSize)>reqWidth){
40 | inSampleSize*=2;
41 | }
42 | }
43 |
44 | return inSampleSize;
45 | }
46 |
47 | public static void cleanImageView(ImageView imageView){
48 | if(!(imageView.getDrawable()instanceof BitmapDrawable))
49 | return;
50 | BitmapDrawable b=(BitmapDrawable)imageView.getDrawable();
51 | if(b.getBitmap()!=null){
52 | b.getBitmap().recycle();
53 | }
54 | imageView.setImageBitmap(null);
55 | }
56 |
57 | }
58 |
--------------------------------------------------------------------------------
/src/cn/edu/zju/isee/www/dayplan/Photo.java:
--------------------------------------------------------------------------------
1 | package cn.edu.zju.isee.www.dayplan;
2 |
3 | import org.json.JSONException;
4 | import org.json.JSONObject;
5 |
6 | public class Photo {
7 | private static final String JSON_FILENAME ="fileName";
8 | private String mFileName;
9 |
10 | public Photo(String fileName){
11 | mFileName=fileName;
12 | }
13 | public Photo(JSONObject json)throws JSONException{
14 | mFileName=json.getString(JSON_FILENAME);
15 | }
16 | public JSONObject toJSON()throws JSONException{
17 | JSONObject json=new JSONObject();
18 | json.put(JSON_FILENAME, mFileName);
19 | return json;
20 | }
21 | public String getFileName(){
22 | return mFileName;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/cn/edu/zju/isee/www/dayplan/Plan.java:
--------------------------------------------------------------------------------
1 | package cn.edu.zju.isee.www.dayplan;
2 |
3 | import java.util.Calendar;
4 | import java.util.Date;
5 | import java.util.GregorianCalendar;
6 | import java.util.UUID;
7 |
8 | import org.json.JSONException;
9 | import org.json.JSONObject;
10 |
11 | import android.graphics.Bitmap;
12 |
13 | public class Plan{
14 | private static final String JSON_ID ="id";
15 | private static final String JSON_TITLE ="title";
16 | private static final String JSON_DETAIL ="detail";
17 | private static final String JSON_TYPE ="type";
18 | private static final String JSON_LABEL ="label";
19 | private static final String JSON_DEAD_HOUR ="deadHour";
20 | private static final String JSON_DEAD_MINUTE ="deadMinute";
21 | private static final String JSON_DAY ="day";
22 | private static final String JSON_MONTH ="month";
23 | private static final String JSON_DATE ="date";
24 | private static final String JSON_SOLVED ="solved";
25 | private static final String JSON_PHOTO ="photo";
26 | private static final String JSON_ALARM ="alarm";
27 | private static final String JSON_RESOLVED ="resolved";
28 |
29 | private UUID mId;
30 | private String mTitle;
31 | private String mDetail;
32 | private String mType;
33 | private String mLabel;
34 | private Date mDate =new Date();
35 | // private int mDay;
36 | // private int mMonth;
37 | // private int mDeadHour;
38 | // private int mDeadMinute;
39 | private Bitmap mImage;
40 | private Photo mPhoto;
41 | private int mIsSetAlarm;
42 | private int mIsSolved;
43 |
44 | public Plan(){
45 | mId=UUID.randomUUID();
46 | mType=new String();
47 | mDetail=new String();
48 | mTitle=new String();
49 | mLabel=new String();
50 | }
51 | public Plan(String title,String detail){
52 | mId=UUID.randomUUID();
53 | mTitle=title;
54 | mDetail=detail;
55 | }
56 | public Plan(String title,String detail,String type){
57 | this(title,detail);
58 | mType=type;
59 | }
60 | public Plan(String title,String detail,String type,String label,Date date){
61 | this(title,detail,type);
62 | mLabel=label;
63 | mDate=date;
64 | }
65 |
66 | public Plan(JSONObject json)throws JSONException{
67 | if(json.has(JSON_ID)){
68 | mId=UUID.fromString(json.getString(JSON_ID));
69 | }
70 | if(json.has(JSON_TITLE)){
71 | mTitle=json.getString(JSON_TITLE);
72 | }
73 | if(json.has(JSON_DETAIL)){
74 | mDetail=json.getString(JSON_DETAIL);
75 | }
76 | if(json.has(JSON_TYPE)){
77 | mType=json.getString(JSON_TYPE);
78 | }
79 | if(json.has(JSON_LABEL)){
80 | mLabel=json.getString(JSON_LABEL);
81 | }
82 | if(json.has(JSON_MONTH)&&json.has(JSON_DAY)&&json.has(JSON_DEAD_HOUR)
83 | &&json.has(JSON_DEAD_MINUTE)){
84 | mDate=new GregorianCalendar(2015, json.getInt(JSON_MONTH),
85 | json.getInt(JSON_DAY), json.getInt(JSON_DEAD_HOUR),
86 | json.getInt(JSON_DEAD_MINUTE)).getTime();
87 | }
88 | if(json.has(JSON_PHOTO)){
89 | mPhoto=new Photo(json.getJSONObject(JSON_PHOTO));
90 | }
91 | if(json.has(JSON_ALARM)){
92 | mIsSetAlarm=json.getInt(JSON_ALARM);
93 | }
94 | if(json.has(JSON_RESOLVED)){
95 | mIsSolved=json.getInt(JSON_RESOLVED);
96 | }
97 | }
98 |
99 | public JSONObject toJSON()throws JSONException{
100 | JSONObject json=new JSONObject();
101 | json.put(JSON_ID, mId.toString());
102 | json.put(JSON_TITLE, mTitle);
103 | json.put(JSON_DETAIL, mDetail);
104 | json.put(JSON_TYPE, mType);
105 | json.put(JSON_LABEL, mLabel);
106 |
107 | Calendar c=Calendar.getInstance();
108 | c.setTime(mDate);
109 | json.put(JSON_MONTH, c.get(Calendar.MONTH));
110 | json.put(JSON_DAY, c.get(Calendar.DAY_OF_MONTH));
111 | json.put(JSON_DEAD_HOUR, c.get(Calendar.HOUR_OF_DAY));
112 | json.put(JSON_DEAD_MINUTE, c.get(Calendar.MINUTE));
113 |
114 | if(mPhoto!=null){
115 | json.put(JSON_PHOTO, mPhoto.toJSON());
116 | }
117 | json.put(JSON_ALARM, mIsSetAlarm);
118 | json.put(JSON_RESOLVED, mIsSolved);
119 |
120 | return json;
121 | }
122 |
123 |
124 | public UUID getId() {
125 | return mId;
126 | }
127 | public void setId(UUID id) {
128 | mId = id;
129 | }
130 | public String getTitle() {
131 | return mTitle;
132 | }
133 | public void setTitle(String title) {
134 | mTitle = title;
135 | }
136 |
137 | public String getDetail() {
138 | return mDetail;
139 | }
140 |
141 | public void setDetail(String detail) {
142 | mDetail = detail;
143 | }
144 |
145 | public String getType() {
146 | return mType;
147 | }
148 |
149 | public void setType(String type) {
150 | mType = type;
151 | }
152 |
153 | public String getLabel() {
154 | return mLabel;
155 | }
156 |
157 | public void setLabel(String label) {
158 | mLabel = label;
159 | }
160 |
161 | public Date getDate() {
162 | return mDate;
163 | }
164 | public int getYear(){
165 |
166 | return getCalendar().get(Calendar.YEAR);
167 | }
168 | public int getMonth(){
169 |
170 | return getCalendar().get(Calendar.MONTH)+1;
171 | }
172 | public int getDay(){
173 |
174 | return getCalendar().get(Calendar.DAY_OF_MONTH);
175 | }
176 | public int getHour(){
177 |
178 | return getCalendar().get(Calendar.HOUR_OF_DAY);
179 | }
180 | public int getMinute(){
181 | return getCalendar().get(Calendar.MINUTE);
182 | }
183 |
184 | private Calendar getCalendar(){
185 | Calendar c=Calendar.getInstance();
186 | c.setTime(mDate);
187 | return c;
188 | }
189 | public void setDate(Date date) {
190 | mDate = date;
191 | }
192 | public Bitmap getImage() {
193 | return mImage;
194 | }
195 |
196 | public void setImage(Bitmap image) {
197 | mImage = image;
198 | }
199 | public int getSolved() {
200 | return mIsSolved;
201 | }
202 | public void setSolved(int isSolved) {
203 | mIsSolved =isSolved;
204 | }
205 | public Photo getPhoto() {
206 | return mPhoto;
207 | }
208 | public void setPhoto(Photo photo) {
209 | mPhoto = photo;
210 | }
211 | public int getIsSetAlarm() {
212 | return mIsSetAlarm;
213 | }
214 | public void setIsSetAlarm(int isSetAlarm) {
215 | mIsSetAlarm = isSetAlarm;
216 | }
217 |
218 |
219 |
220 | }
221 |
--------------------------------------------------------------------------------
/src/cn/edu/zju/isee/www/dayplan/PlanCameraActivity.java:
--------------------------------------------------------------------------------
1 | package cn.edu.zju.isee.www.dayplan;
2 |
3 | import android.os.Bundle;
4 | import android.support.v4.app.Fragment;
5 | import android.view.Window;
6 | import android.view.WindowManager;
7 |
8 | public class PlanCameraActivity extends SingleActivity{
9 |
10 |
11 | @Override
12 | public void onCreate(Bundle savedInstanceState) {
13 | requestWindowFeature(Window.FEATURE_NO_TITLE);
14 | getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
15 |
16 | super.onCreate(savedInstanceState);
17 | }
18 |
19 | @Override
20 | protected Fragment createFragment() {
21 | return new PlanCameraFragment();
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/src/cn/edu/zju/isee/www/dayplan/PlanCameraFragment.java:
--------------------------------------------------------------------------------
1 | package cn.edu.zju.isee.www.dayplan;
2 |
3 |
4 | import java.io.FileOutputStream;
5 | import java.io.IOException;
6 | import java.util.List;
7 | import java.util.UUID;
8 |
9 | import android.app.Activity;
10 | import android.content.Context;
11 | import android.content.Intent;
12 | import android.hardware.Camera;
13 | import android.hardware.Camera.Size;
14 | import android.os.Build;
15 | import android.os.Bundle;
16 | import android.support.v4.app.Fragment;
17 | import android.util.Log;
18 | import android.view.LayoutInflater;
19 | import android.view.SurfaceHolder;
20 | import android.view.SurfaceView;
21 | import android.view.View;
22 | import android.view.ViewGroup;
23 | import android.widget.Button;
24 |
25 | public class PlanCameraFragment extends Fragment{
26 | public static final String EXTRA_PHOTO_NAME="photo_filename";
27 | private static final String TAG ="PlanCameraFragment";
28 |
29 | private Camera mCamera;
30 | private SurfaceView mSurfaceView;
31 | private View mProgressContainer;
32 |
33 | private Camera.ShutterCallback mShutterCallback=new Camera.ShutterCallback() {
34 |
35 | @Override
36 | public void onShutter() {
37 | mProgressContainer.setVisibility(View.VISIBLE);
38 | }
39 | };
40 |
41 | private Camera.PictureCallback mJpegCallBack=new Camera.PictureCallback() {
42 |
43 | @Override
44 | public void onPictureTaken(byte[] data, Camera camera) {
45 | String fileName=UUID.randomUUID().toString()+".jpg";
46 |
47 | FileOutputStream os=null;
48 | Boolean success=true;
49 | try{
50 | os=getActivity().openFileOutput(fileName, Context.MODE_PRIVATE);
51 | os.write(data);
52 | }catch(Exception e){
53 | Log.e(TAG,"error writing to file"+fileName,e);
54 | success=false;
55 | }finally{
56 | try{
57 | if(os!=null)
58 | os.close();
59 | }catch (Exception e) {
60 | Log.e(TAG,"Error closing file "+fileName,e);
61 | success=false;
62 | }
63 | }
64 |
65 | if(success){
66 | Intent i=new Intent();
67 | i.putExtra(EXTRA_PHOTO_NAME, fileName);
68 | getActivity().setResult(Activity.RESULT_OK, i);
69 | Log.d(TAG,"JPEG saved at "+fileName);
70 | }else{
71 | getActivity().setResult(Activity.RESULT_CANCELED);
72 | }
73 | getActivity().finish();
74 | }
75 | };
76 |
77 | @SuppressWarnings("deprecation")
78 | @Override
79 | public View onCreateView(LayoutInflater inflater, ViewGroup container,
80 | Bundle savedInstanceState) {
81 | View v=inflater.inflate(R.layout.fragment_plan_camera, container,false);
82 |
83 | mProgressContainer=v.findViewById(R.id.plan_camera_progressContainer);
84 | mProgressContainer.setVisibility(View.INVISIBLE);
85 |
86 | Button takePictureButton=(Button)v.findViewById(R.id.plan_camera_takePictureButton);
87 | takePictureButton.setOnClickListener(new View.OnClickListener() {
88 |
89 | @Override
90 | public void onClick(View v) {
91 | if(mCamera!=null){
92 | mCamera.takePicture(mShutterCallback, null, mJpegCallBack);
93 | }
94 | }
95 | });
96 |
97 | mSurfaceView=(SurfaceView)v.findViewById(R.id.plan_camera_surfaceView);
98 | SurfaceHolder holder=mSurfaceView.getHolder();
99 | holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
100 |
101 | holder.addCallback(new SurfaceHolder.Callback() {
102 |
103 | @Override
104 | public void surfaceDestroyed(SurfaceHolder holder) {
105 | if(mCamera!=null){
106 | mCamera.stopPreview();
107 | }
108 | }
109 |
110 | @Override
111 | public void surfaceCreated(SurfaceHolder holder) {
112 | try{
113 | if(mCamera!=null){
114 | mCamera.setPreviewDisplay(holder);
115 | }
116 | }catch(IOException e){
117 | Log.e(TAG,"error setting up preview display",e);
118 | }
119 | }
120 |
121 | @Override
122 | public void surfaceChanged(SurfaceHolder holder, int format, int width,
123 | int height) {
124 | if(mCamera==null)
125 | return;
126 |
127 | Camera.Parameters parameters=mCamera.getParameters();
128 | Size s=getBestSupportedSize(parameters.getSupportedPreviewSizes(), width, height);
129 | parameters.setPreviewSize(s.width, s.height);
130 | s=getBestSupportedSize(parameters.getSupportedPictureSizes(), width, height);
131 | parameters.setPictureSize(s.width, s.height);
132 | mCamera.setParameters(parameters);
133 | try{
134 | mCamera.startPreview();
135 | }catch(Exception e){
136 | Log.e(TAG,"Could not start preview",e);
137 | mCamera.release();
138 | mCamera=null;
139 | }
140 | }
141 | });
142 |
143 | return v;
144 | }
145 |
146 | @Override
147 | public void onResume() {
148 | super.onResume();
149 | if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.GINGERBREAD){
150 | mCamera=Camera.open(0);
151 | }
152 | else{
153 | mCamera=Camera.open();
154 | }
155 | }
156 |
157 | @Override
158 | public void onPause() {
159 | super.onPause();
160 | if(mCamera!=null){
161 | mCamera.release();
162 | mCamera=null;
163 | }
164 | }
165 |
166 | //get the largest size available
167 | private Size getBestSupportedSize(Listsizes,int width,int height){
168 | Size bestSize=sizes.get(0);
169 | int largestArea=bestSize.height*bestSize.width;
170 | for(Size s:sizes){
171 | int area=s.width*s.height;
172 | if(area>largestArea){
173 | bestSize=s;
174 | largestArea=area;
175 | }
176 | }
177 |
178 | return bestSize;
179 | }
180 |
181 |
182 |
183 |
184 | }
185 |
--------------------------------------------------------------------------------
/src/cn/edu/zju/isee/www/dayplan/PlanEditActivity.java:
--------------------------------------------------------------------------------
1 | package cn.edu.zju.isee.www.dayplan;
2 |
3 | import java.util.UUID;
4 |
5 | import android.support.v4.app.Fragment;
6 |
7 | public class PlanEditActivity extends SingleActivity{
8 |
9 | @Override
10 | protected Fragment createFragment() {
11 | UUID planId=(UUID)getIntent().getSerializableExtra(PlanEditFragment.EXTRA_PLAN_ID);
12 |
13 | return PlanEditFragment.newInstance(planId);
14 | }
15 |
16 | }
17 |
--------------------------------------------------------------------------------
/src/cn/edu/zju/isee/www/dayplan/PlanEditFragment.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/src/cn/edu/zju/isee/www/dayplan/PlanEditFragment.java
--------------------------------------------------------------------------------
/src/cn/edu/zju/isee/www/dayplan/PlanListActivity.java:
--------------------------------------------------------------------------------
1 | package cn.edu.zju.isee.www.dayplan;
2 |
3 | import android.support.v4.app.Fragment;
4 |
5 | public class PlanListActivity extends SingleActivity{
6 |
7 | @Override
8 | protected Fragment createFragment() {
9 | return new PlanListFragment();
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/src/cn/edu/zju/isee/www/dayplan/PlanListFragment.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/src/cn/edu/zju/isee/www/dayplan/PlanListFragment.java
--------------------------------------------------------------------------------
/src/cn/edu/zju/isee/www/dayplan/PlanListScrollView.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/goodluckcwl/DayPlan/5811a0edf990d4534556c48e84afeb98a32f2fc8/src/cn/edu/zju/isee/www/dayplan/PlanListScrollView.java
--------------------------------------------------------------------------------
/src/cn/edu/zju/isee/www/dayplan/PlanListView.java:
--------------------------------------------------------------------------------
1 | package cn.edu.zju.isee.www.dayplan;
2 |
3 | import android.content.Context;
4 | import android.util.AttributeSet;
5 | import android.view.View;
6 |
7 | public class PlanListView extends View{
8 |
9 | public PlanListView(Context context, AttributeSet attrs) {
10 | super(context, attrs);
11 | }
12 |
13 | }
--------------------------------------------------------------------------------
/src/cn/edu/zju/isee/www/dayplan/PlanPagerActivity.java:
--------------------------------------------------------------------------------
1 | package cn.edu.zju.isee.www.dayplan;
2 |
3 | import java.util.ArrayList;
4 | import java.util.UUID;
5 |
6 | import android.os.Bundle;
7 | import android.support.v4.app.Fragment;
8 | import android.support.v4.app.FragmentActivity;
9 | import android.support.v4.app.FragmentManager;
10 | import android.support.v4.app.FragmentStatePagerAdapter;
11 | import android.support.v4.view.ViewPager;
12 |
13 | public class PlanPagerActivity extends FragmentActivity{
14 | private ViewPager mViewPaper;
15 | private ArrayList mPlans;
16 |
17 | @Override
18 | protected void onCreate(Bundle arg0) {
19 | super.onCreate(arg0);
20 | mViewPaper=new ViewPager(this);
21 | mViewPaper.setId(R.id.viewPaper);
22 | setContentView(mViewPaper);
23 |
24 | mPlans=SinglePlanLab.getInstance(this).getPlans();
25 | FragmentManager fm=getSupportFragmentManager();
26 | mViewPaper.setAdapter(new FragmentStatePagerAdapter(fm) {
27 |
28 | @Override
29 | public int getCount() {
30 | return mPlans.size();
31 | }
32 |
33 | @Override
34 | public Fragment getItem(int arg0) {
35 | Plan p=mPlans.get(arg0);
36 | return PlanEditFragment.newInstance(p.getId());
37 | }
38 | });
39 |
40 | UUID planId=(UUID)getIntent()
41 | .getSerializableExtra(PlanEditFragment.EXTRA_PLAN_ID);
42 | for(int i=0;i