├── AnimationDemo
├── .gitignore
├── .idea
│ ├── .name
│ ├── compiler.xml
│ ├── copyright
│ │ └── profiles_settings.xml
│ ├── gradle.xml
│ ├── misc.xml
│ ├── modules.xml
│ └── vcs.xml
├── AnimationDemo.iml
├── app
│ ├── .gitignore
│ ├── app.iml
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── lucifer
│ │ │ └── animationdemo
│ │ │ └── ApplicationTest.java
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ └── com
│ │ │ └── example
│ │ │ └── lucifer
│ │ │ └── animationdemo
│ │ │ ├── MainActivity.java
│ │ │ ├── drawable
│ │ │ ├── CirclePercentDrawable.java
│ │ │ └── WatchDrawable.java
│ │ │ └── view
│ │ │ └── LineView.java
│ │ └── res
│ │ ├── layout
│ │ └── activity_main.xml
│ │ ├── menu
│ │ └── menu_main.xml
│ │ ├── mipmap-hdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-mdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xhdpi
│ │ ├── checkin_score_bg.png
│ │ └── ic_launcher.png
│ │ ├── mipmap-xxhdpi
│ │ └── ic_launcher.png
│ │ ├── values-w820dp
│ │ └── dimens.xml
│ │ └── values
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ └── styles.xml
├── build.gradle
├── gradle.properties
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
└── settings.gradle
├── Constructure.suml
├── FrescoDemo
├── .gitignore
├── .idea
│ ├── .name
│ ├── compiler.xml
│ ├── copyright
│ │ └── profiles_settings.xml
│ ├── dictionaries
│ │ └── JunyiZhou.xml
│ ├── encodings.xml
│ ├── gradle.xml
│ ├── misc.xml
│ ├── modules.xml
│ ├── runConfigurations.xml
│ └── vcs.xml
├── FrescoDemo.iml
├── app
│ ├── .gitignore
│ ├── app.iml
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── junyizhou
│ │ │ └── frescodemo
│ │ │ └── ApplicationTest.java
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ └── com
│ │ │ └── example
│ │ │ └── junyizhou
│ │ │ └── frescodemo
│ │ │ └── MainActivity.java
│ │ └── res
│ │ ├── layout
│ │ └── activity_main.xml
│ │ ├── menu
│ │ └── menu_main.xml
│ │ ├── mipmap-hdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-mdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xhdpi
│ │ ├── ic_launcher.png
│ │ ├── icon_failure.png
│ │ ├── icon_placeholder.png
│ │ ├── icon_progress_bar.png
│ │ └── icon_retry.png
│ │ ├── mipmap-xxhdpi
│ │ └── ic_launcher.png
│ │ ├── values-w820dp
│ │ └── dimens.xml
│ │ └── values
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ └── styles.xml
├── build.gradle
├── gradle.properties
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
└── settings.gradle
├── HealthManager
├── .gitignore
├── .idea
│ ├── .name
│ ├── compiler.xml
│ ├── copyright
│ │ └── profiles_settings.xml
│ ├── dictionaries
│ │ └── JunyiZhou.xml
│ ├── encodings.xml
│ ├── gradle.xml
│ ├── misc.xml
│ ├── modules.xml
│ ├── runConfigurations.xml
│ └── vcs.xml
├── app
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── songyang
│ │ │ └── healthmanager
│ │ │ └── ApplicationTest.java
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── songyang
│ │ │ │ └── healthmanager
│ │ │ │ ├── HealthManagerApplication.java
│ │ │ │ ├── bean
│ │ │ │ ├── ClinicBean.java
│ │ │ │ ├── ExaminationBean.java
│ │ │ │ ├── HospitalBean.java
│ │ │ │ ├── StepBean.java
│ │ │ │ └── UserBean.java
│ │ │ │ ├── component
│ │ │ │ ├── IOnItemClickListener.java
│ │ │ │ ├── IOnItemLongClickListener.java
│ │ │ │ ├── LineDiagramView.java
│ │ │ │ └── RecyclerListFragment.java
│ │ │ │ ├── daily
│ │ │ │ ├── model
│ │ │ │ │ ├── DailyModel.java
│ │ │ │ │ └── IDailyModel.java
│ │ │ │ ├── presenter
│ │ │ │ │ ├── DailyPresenter.java
│ │ │ │ │ └── IDailyPresenter.java
│ │ │ │ └── view
│ │ │ │ │ ├── DailyFragment.java
│ │ │ │ │ └── IDailyView.java
│ │ │ │ ├── db
│ │ │ │ ├── DBManager.java
│ │ │ │ ├── HealthSQLiteOpenHelper.java
│ │ │ │ └── SQLS.java
│ │ │ │ ├── info
│ │ │ │ ├── model
│ │ │ │ │ ├── IUserModel.java
│ │ │ │ │ └── UserModel.java
│ │ │ │ ├── presenter
│ │ │ │ │ ├── IInfoPresenter.java
│ │ │ │ │ └── InfoPresenter.java
│ │ │ │ └── view
│ │ │ │ │ ├── ClinicFragment.java
│ │ │ │ │ ├── ExaminationFragment.java
│ │ │ │ │ ├── HospitalFragment.java
│ │ │ │ │ ├── IInfoView.java
│ │ │ │ │ ├── InfoActivity.java
│ │ │ │ │ └── ProfileFragment.java
│ │ │ │ ├── login
│ │ │ │ ├── event
│ │ │ │ │ └── UserLoginEvent.java
│ │ │ │ ├── model
│ │ │ │ │ ├── ILoginModel.java
│ │ │ │ │ └── LoginModel.java
│ │ │ │ ├── presenter
│ │ │ │ │ ├── ILoginPresenter.java
│ │ │ │ │ └── LoginPresenter.java
│ │ │ │ └── view
│ │ │ │ │ ├── ILoginView.java
│ │ │ │ │ ├── LoginActivity.java
│ │ │ │ │ └── LoginFragment.java
│ │ │ │ ├── main
│ │ │ │ ├── model
│ │ │ │ │ ├── IMainModel.java
│ │ │ │ │ └── MainModel.java
│ │ │ │ ├── presenter
│ │ │ │ │ ├── IMainPresenter.java
│ │ │ │ │ └── MainPresenter.java
│ │ │ │ └── view
│ │ │ │ │ ├── IMainView.java
│ │ │ │ │ └── MainActivity.java
│ │ │ │ ├── message
│ │ │ │ ├── MessageActivity.java
│ │ │ │ └── MessageListFragment.java
│ │ │ │ ├── rostrum
│ │ │ │ ├── model
│ │ │ │ │ ├── IRostrumModel.java
│ │ │ │ │ └── RostrumModel.java
│ │ │ │ ├── presenter
│ │ │ │ │ ├── IRostrumPresenter.java
│ │ │ │ │ └── RostrumPresenter.java
│ │ │ │ └── view
│ │ │ │ │ ├── IRostrumView.java
│ │ │ │ │ ├── RostrumDetailActivity.java
│ │ │ │ │ └── RostrumListFragment.java
│ │ │ │ ├── treat
│ │ │ │ ├── model
│ │ │ │ │ ├── ITreatModel.java
│ │ │ │ │ └── TreatModel.java
│ │ │ │ ├── presenter
│ │ │ │ │ ├── ITreatPresenter.java
│ │ │ │ │ └── TreatPresenter.java
│ │ │ │ └── view
│ │ │ │ │ ├── DepartmentDetailActivity.java
│ │ │ │ │ ├── DoctorListFragment.java
│ │ │ │ │ ├── ITreatView.java
│ │ │ │ │ ├── TreatDetailActivity.java
│ │ │ │ │ └── TreatFragment.java
│ │ │ │ └── util
│ │ │ │ ├── SharedPreferencesWrapper.java
│ │ │ │ ├── TimeUtil.java
│ │ │ │ └── UserInfoKeeper.java
│ │ └── res
│ │ │ ├── drawable-v21
│ │ │ ├── ic_menu_camera.xml
│ │ │ ├── ic_menu_gallery.xml
│ │ │ ├── ic_menu_manage.xml
│ │ │ ├── ic_menu_send.xml
│ │ │ ├── ic_menu_share.xml
│ │ │ └── ic_menu_slideshow.xml
│ │ │ ├── drawable-xhdpi
│ │ │ ├── hit.png
│ │ │ ├── ic_account.png
│ │ │ ├── ic_account_box.png
│ │ │ ├── ic_arrow_back_white.png
│ │ │ ├── ic_description.png
│ │ │ ├── ic_edit.png
│ │ │ ├── ic_failure.png
│ │ │ ├── ic_info.png
│ │ │ ├── ic_message_white.png
│ │ │ ├── ic_phone.png
│ │ │ ├── ic_placeholder.png
│ │ │ ├── ic_progress_bar.png
│ │ │ ├── ic_retry.png
│ │ │ ├── ic_send_grey.png
│ │ │ ├── ic_settings.png
│ │ │ ├── item_image_placeholder.png
│ │ │ ├── linechart_bubble.png
│ │ │ └── linechart_point.png
│ │ │ ├── drawable
│ │ │ ├── btn_doctor_operation.xml
│ │ │ ├── bubble_blue.xml
│ │ │ ├── bubble_gray.xml
│ │ │ └── side_nav_bar.xml
│ │ │ ├── layout
│ │ │ ├── activity_department_detail.xml
│ │ │ ├── activity_info.xml
│ │ │ ├── activity_login.xml
│ │ │ ├── activity_main.xml
│ │ │ ├── activity_message.xml
│ │ │ ├── activity_rostrum_detail.xml
│ │ │ ├── activity_treat_detail.xml
│ │ │ ├── fragment_clinic.xml
│ │ │ ├── fragment_daily.xml
│ │ │ ├── fragment_examination.xml
│ │ │ ├── fragment_hospital.xml
│ │ │ ├── fragment_login.xml
│ │ │ ├── fragment_main.xml
│ │ │ ├── fragment_profile.xml
│ │ │ ├── fragment_recycler_list.xml
│ │ │ ├── fragment_treat.xml
│ │ │ ├── item_department.xml
│ │ │ ├── item_doctor.xml
│ │ │ ├── item_message.xml
│ │ │ ├── item_rostrum.xml
│ │ │ ├── item_search.xml
│ │ │ └── nav_header_main.xml
│ │ │ ├── menu
│ │ │ ├── activity_main_drawer.xml
│ │ │ ├── main2.xml
│ │ │ └── menu_main.xml
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── values-v21
│ │ │ └── styles.xml
│ │ │ ├── values-w820dp
│ │ │ └── dimens.xml
│ │ │ └── values
│ │ │ ├── colors.xml
│ │ │ ├── dimens.xml
│ │ │ ├── drawables.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── example
│ │ └── songyang
│ │ └── healthmanager
│ │ └── ExampleUnitTest.java
├── build.gradle
├── gradle.properties
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
└── 手机医疗服务数据库设计.docx
├── ImageHandleDemo
├── .gitignore
├── .idea
│ ├── .name
│ ├── compiler.xml
│ ├── copyright
│ │ └── profiles_settings.xml
│ ├── dictionaries
│ │ └── JunyiZhou.xml
│ ├── encodings.xml
│ ├── gradle.xml
│ ├── misc.xml
│ ├── modules.xml
│ ├── runConfigurations.xml
│ └── vcs.xml
├── ImageHandleDemo.iml
├── app
│ ├── .gitignore
│ ├── app.iml
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── junyizhou
│ │ │ └── imagehandledemo
│ │ │ └── ApplicationTest.java
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── assets
│ │ └── decals
│ │ │ ├── decal_abdominalmuscles.png
│ │ │ ├── decal_awesome.png
│ │ │ ├── decal_batman.png
│ │ │ ├── decal_baymaxandjianjian.png
│ │ │ ├── decal_beaddicted.png
│ │ │ ├── decal_beastmode.png
│ │ │ ├── decal_beyourself.png
│ │ │ ├── decal_broccoli.png
│ │ │ ├── decal_captainamerica.png
│ │ │ ├── decal_catwoman.png
│ │ │ ├── decal_cute.png
│ │ │ ├── decal_darkcuisine.png
│ │ │ ├── decal_death.png
│ │ │ ├── decal_dontwait.png
│ │ │ ├── decal_eatingisabelief.png
│ │ │ ├── decal_energycore.png
│ │ │ ├── decal_energyring.png
│ │ │ ├── decal_fallinlove.png
│ │ │ ├── decal_fight.png
│ │ │ ├── decal_ftmodu.png
│ │ │ ├── decal_girlonfire.png
│ │ │ ├── decal_healthyandnature.png
│ │ │ ├── decal_hulk.png
│ │ │ ├── decal_ironman.png
│ │ │ ├── decal_itsfittime.png
│ │ │ ├── decal_letsrock.png
│ │ │ ├── decal_liftiron.png
│ │ │ ├── decal_loki.png
│ │ │ ├── decal_megabotfight.png
│ │ │ ├── decal_megabotnormal.png
│ │ │ ├── decal_menzerna.png
│ │ │ ├── decal_moring.png
│ │ │ ├── decal_noface.png
│ │ │ ├── decal_onfire.png
│ │ │ ├── decal_push.png
│ │ │ ├── decal_run.png
│ │ │ ├── decal_runtoendless.png
│ │ │ ├── decal_shield.png
│ │ │ ├── decal_shout.png
│ │ │ ├── decal_soil.png
│ │ │ ├── decal_stamp.png
│ │ │ ├── decal_steak.png
│ │ │ ├── decal_takemefly.png
│ │ │ ├── decal_thorshammer.png
│ │ │ ├── decal_tobebatman.png
│ │ │ ├── decal_vavenger.png
│ │ │ ├── decal_vsangel.png
│ │ │ ├── decal_warmupgroup.png
│ │ │ ├── decal_wolverine.png
│ │ │ └── decal_youneedfatloss.png
│ │ ├── java
│ │ └── com
│ │ │ └── example
│ │ │ └── junyizhou
│ │ │ └── imagehandledemo
│ │ │ ├── ImageHandleDemoApplication.java
│ │ │ ├── activity
│ │ │ ├── MainActivity.java
│ │ │ ├── MediaPickerActivity.java
│ │ │ └── PageActivity.java
│ │ │ └── view
│ │ │ ├── BaseView.java
│ │ │ ├── CropView.java
│ │ │ ├── DecalView.java
│ │ │ └── PageView.java
│ │ └── res
│ │ ├── drawable-xhdpi
│ │ ├── clock_cexit.png
│ │ ├── demo.jpg
│ │ ├── demo1.jpg
│ │ ├── ic_camera.png
│ │ ├── ic_close.png
│ │ ├── page1.jpg
│ │ └── page2.jpg
│ │ ├── drawable
│ │ └── main_func_text_color.xml
│ │ ├── layout
│ │ ├── activity_main.xml
│ │ ├── activity_media_picker.xml
│ │ ├── activity_page.xml
│ │ └── item_dical.xml
│ │ ├── menu
│ │ └── menu_main.xml
│ │ ├── mipmap-hdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-mdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xhdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xxhdpi
│ │ └── ic_launcher.png
│ │ ├── values-v21
│ │ └── styles.xml
│ │ ├── values-w820dp
│ │ └── dimens.xml
│ │ └── values
│ │ ├── colors.xml
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ └── styles.xml
├── build.gradle
├── gradle.properties
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
└── settings.gradle
├── ImageLoaderDemo
├── .gitignore
├── .idea
│ ├── .name
│ ├── compiler.xml
│ ├── copyright
│ │ └── profiles_settings.xml
│ ├── gradle.xml
│ ├── misc.xml
│ ├── modules.xml
│ └── vcs.xml
├── ImageLoaderDemo.iml
├── app
│ ├── .gitignore
│ ├── app.iml
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── junyizhou
│ │ │ └── imageloaderdemo
│ │ │ └── ApplicationTest.java
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ └── com
│ │ │ └── example
│ │ │ └── junyizhou
│ │ │ └── imageloaderdemo
│ │ │ └── MainActivity.java
│ │ └── res
│ │ ├── layout
│ │ └── activity_main.xml
│ │ ├── menu
│ │ └── menu_main.xml
│ │ ├── mipmap-hdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-mdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xhdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xxhdpi
│ │ └── ic_launcher.png
│ │ ├── values-w820dp
│ │ └── dimens.xml
│ │ └── values
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ └── styles.xml
├── build.gradle
├── gradle.properties
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
└── settings.gradle
├── RecyclerViewDemo
├── .gitignore
├── .idea
│ ├── .name
│ ├── compiler.xml
│ ├── copyright
│ │ └── profiles_settings.xml
│ ├── dictionaries
│ │ └── JunyiZhou.xml
│ ├── encodings.xml
│ ├── gradle.xml
│ ├── misc.xml
│ ├── modules.xml
│ ├── runConfigurations.xml
│ └── vcs.xml
├── RecyclerViewDemo.iml
├── app
│ ├── .gitignore
│ ├── app.iml
│ ├── build.gradle
│ ├── libs
│ │ ├── robotium-solo-5.5.3-javadoc.jar
│ │ └── robotium-solo-5.5.3.jar
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── junyizhou
│ │ │ └── recyclerviewdemo
│ │ │ ├── ApplicationTest.java
│ │ │ └── test
│ │ │ ├── TestCaseI.java
│ │ │ └── TestCaseII.java
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ └── com
│ │ │ └── example
│ │ │ └── junyizhou
│ │ │ └── recyclerviewdemo
│ │ │ ├── activity
│ │ │ └── MainActivity.java
│ │ │ ├── decoration
│ │ │ ├── DividerGridItemDecoration.java
│ │ │ └── DividerItemDecoration.java
│ │ │ ├── foundation
│ │ │ ├── IOnItemClickListener.java
│ │ │ ├── IOnItemLongClickListener.java
│ │ │ └── RecyclerListFragment.java
│ │ │ └── fragment
│ │ │ ├── GridListDemoFragment.java
│ │ │ ├── GridSpanSizeDIYListDemoFragment.java
│ │ │ ├── LinearListDemoFragment.java
│ │ │ ├── StaggeredGridHorizontalListDemoFragment.java
│ │ │ ├── StaggeredGridVerticalFlowListDemoFragment.java
│ │ │ └── StaggeredGridVerticalListDemoFragment.java
│ │ └── res
│ │ ├── layout
│ │ ├── activity_main.xml
│ │ ├── fragment_recycler_list.xml
│ │ ├── item_first.xml
│ │ ├── item_grid.xml
│ │ ├── item_linear.xml
│ │ ├── item_second.xml
│ │ └── item_third.xml
│ │ ├── menu
│ │ └── menu_main.xml
│ │ ├── mipmap-hdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-mdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xhdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xxhdpi
│ │ └── ic_launcher.png
│ │ ├── values-w820dp
│ │ └── dimens.xml
│ │ └── values
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ └── styles.xml
├── build.gradle
├── gradle.properties
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
└── settings.gradle
└── RxJavaDemo
├── .gitignore
├── .idea
├── .name
├── compiler.xml
├── copyright
│ └── profiles_settings.xml
├── dictionaries
│ └── JunyiZhou.xml
├── encodings.xml
├── gradle.xml
├── misc.xml
├── modules.xml
├── runConfigurations.xml
└── vcs.xml
├── app
├── .gitignore
├── build.gradle
├── proguard-rules.pro
└── src
│ ├── androidTest
│ └── java
│ │ └── com
│ │ └── example
│ │ └── junyizhou
│ │ └── rxjavademo
│ │ └── ApplicationTest.java
│ ├── main
│ ├── AndroidManifest.xml
│ ├── java
│ │ └── com
│ │ │ └── example
│ │ │ └── junyizhou
│ │ │ └── rxjavademo
│ │ │ ├── RxJavaDemoApplication.java
│ │ │ ├── TestView.java
│ │ │ ├── activity
│ │ │ ├── MainActivity.java
│ │ │ └── TestActivity.java
│ │ │ ├── api
│ │ │ ├── ApiManager.java
│ │ │ ├── ApiManagerService.java
│ │ │ ├── BitmapManager.java
│ │ │ └── factory
│ │ │ │ ├── BitmapConverterFactory.java
│ │ │ │ └── BitmapResponseBodyConverter.java
│ │ │ ├── imageloader
│ │ │ ├── CacheObservable.java
│ │ │ ├── DiskCacheObservable.java
│ │ │ ├── MemoryCache.java
│ │ │ ├── MemoryCacheOvservable.java
│ │ │ ├── NetCacheObservable.java
│ │ │ ├── RxImageLoader.java
│ │ │ └── Sources.java
│ │ │ └── model
│ │ │ ├── BitmapData.java
│ │ │ ├── User.java
│ │ │ └── WeatherData.java
│ └── res
│ │ ├── drawable-xhdpi
│ │ ├── android.png
│ │ ├── icon_weather_location.png
│ │ └── icon_weather_wind_level.png
│ │ ├── drawable
│ │ ├── air_quality_great_weather_banner.xml
│ │ └── circle_weather_banner.xml
│ │ ├── layout-land
│ │ └── content_main.xml
│ │ ├── layout
│ │ ├── activity_main.xml
│ │ ├── activity_test.xml
│ │ ├── content_main.xml
│ │ ├── content_test.xml
│ │ └── content_weather.xml
│ │ ├── menu
│ │ └── menu_main.xml
│ │ ├── mipmap-hdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-mdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xhdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xxhdpi
│ │ └── ic_launcher.png
│ │ ├── mipmap-xxxhdpi
│ │ └── ic_launcher.png
│ │ ├── values-v21
│ │ └── styles.xml
│ │ ├── values-w820dp
│ │ └── dimens.xml
│ │ └── values
│ │ ├── colors.xml
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ └── styles.xml
│ └── test
│ └── java
│ └── com
│ └── example
│ └── junyizhou
│ └── rxjavademo
│ └── ExampleUnitTest.java
├── build.gradle
├── gradle.properties
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
└── 未命名绘图.drawio
/AnimationDemo/.gitignore:
--------------------------------------------------------------------------------
1 | .gradle
2 | /local.properties
3 | /.idea/workspace.xml
4 | /.idea/libraries
5 | .DS_Store
6 | /build
7 | /captures
8 |
--------------------------------------------------------------------------------
/AnimationDemo/.idea/.name:
--------------------------------------------------------------------------------
1 | AnimationDemo
--------------------------------------------------------------------------------
/AnimationDemo/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/AnimationDemo/.idea/copyright/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/AnimationDemo/.idea/gradle.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
17 |
18 |
--------------------------------------------------------------------------------
/AnimationDemo/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/AnimationDemo/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/AnimationDemo/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/AnimationDemo/AnimationDemo.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/AnimationDemo/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/AnimationDemo/app/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.application'
2 |
3 | android {
4 | compileSdkVersion 22
5 | buildToolsVersion "22.0.1"
6 |
7 | defaultConfig {
8 | applicationId "com.example.lucifer.animationdemo"
9 | minSdkVersion 15
10 | targetSdkVersion 22
11 | versionCode 1
12 | versionName "1.0"
13 | }
14 | buildTypes {
15 | release {
16 | minifyEnabled false
17 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
18 | }
19 | }
20 | }
21 |
22 | dependencies {
23 | compile fileTree(dir: 'libs', include: ['*.jar'])
24 | compile 'com.android.support:appcompat-v7:22.2.1'
25 | }
26 |
--------------------------------------------------------------------------------
/AnimationDemo/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in D:\sdk/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the proguardFiles
5 | # directive in build.gradle.
6 | #
7 | # For more details, see
8 | # http://developer.android.com/guide/developing/tools/proguard.html
9 |
10 | # Add any project specific keep options here:
11 |
12 | # If your project uses WebView with JS, uncomment the following
13 | # and specify the fully qualified class name to the JavaScript interface
14 | # class:
15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
16 | # public *;
17 | #}
18 |
--------------------------------------------------------------------------------
/AnimationDemo/app/src/androidTest/java/com/example/lucifer/animationdemo/ApplicationTest.java:
--------------------------------------------------------------------------------
1 | package com.example.lucifer.animationdemo;
2 |
3 | import android.app.Application;
4 | import android.test.ApplicationTestCase;
5 |
6 | /**
7 | * Testing Fundamentals
8 | */
9 | public class ApplicationTest extends ApplicationTestCase {
10 | public ApplicationTest() {
11 | super(Application.class);
12 | }
13 | }
--------------------------------------------------------------------------------
/AnimationDemo/app/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
10 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/AnimationDemo/app/src/main/java/com/example/lucifer/animationdemo/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.example.lucifer.animationdemo;
2 |
3 | import android.animation.ObjectAnimator;
4 | import android.animation.ValueAnimator;
5 | import android.app.Activity;
6 | import android.support.v7.app.ActionBarActivity;
7 | import android.os.Bundle;
8 | import android.view.Menu;
9 | import android.view.MenuItem;
10 | import android.view.View;
11 | import android.widget.Button;
12 | import android.widget.FrameLayout;
13 |
14 | import com.example.lucifer.animationdemo.drawable.CirclePercentDrawable;
15 | import com.example.lucifer.animationdemo.drawable.WatchDrawable;
16 | import com.example.lucifer.animationdemo.view.LineView;
17 |
18 |
19 | public class MainActivity extends Activity {
20 |
21 | private Button button;
22 | private FrameLayout fl;
23 |
24 | @Override
25 | protected void onCreate(Bundle savedInstanceState) {
26 | super.onCreate(savedInstanceState);
27 | setContentView(R.layout.activity_main);
28 |
29 | LineView lineView = (LineView) findViewById(R.id.lineview);
30 | lineView.setCoordinate(10f, 10f, 200f, 200f);
31 | // button = (Button) findViewById(R.id.button);
32 | // button.setOnClickListener(this);
33 | //
34 | // fl = (FrameLayout) findViewById(R.id.fl);
35 | // fl.setBackground(new CirclePercentDrawable(this, 0.7f, "#f0f0f0", "#71d282", 10000));
36 | }
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/AnimationDemo/app/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
9 |
10 |
--------------------------------------------------------------------------------
/AnimationDemo/app/src/main/res/menu/menu_main.xml:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/AnimationDemo/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/AnimationDemo/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/AnimationDemo/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/AnimationDemo/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/AnimationDemo/app/src/main/res/mipmap-xhdpi/checkin_score_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/AnimationDemo/app/src/main/res/mipmap-xhdpi/checkin_score_bg.png
--------------------------------------------------------------------------------
/AnimationDemo/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/AnimationDemo/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/AnimationDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/AnimationDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/AnimationDemo/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 64dp
6 |
7 |
--------------------------------------------------------------------------------
/AnimationDemo/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 16dp
4 | 16dp
5 | 8dp
6 |
7 |
--------------------------------------------------------------------------------
/AnimationDemo/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | AnimationDemo
3 |
4 | Hello world!
5 | Settings
6 |
7 |
--------------------------------------------------------------------------------
/AnimationDemo/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/AnimationDemo/build.gradle:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 |
3 | buildscript {
4 | repositories {
5 | jcenter()
6 | }
7 | dependencies {
8 | classpath 'com.android.tools.build:gradle:1.2.3'
9 |
10 | // NOTE: Do not place your application dependencies here; they belong
11 | // in the individual module build.gradle files
12 | }
13 | }
14 |
15 | allprojects {
16 | repositories {
17 | jcenter()
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/AnimationDemo/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m
13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
14 |
15 | # When configured, Gradle will run in incubating parallel mode.
16 | # This option should only be used with decoupled projects. More details, visit
17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
18 | # org.gradle.parallel=true
--------------------------------------------------------------------------------
/AnimationDemo/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/AnimationDemo/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/AnimationDemo/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Apr 10 15:27:10 PDT 2013
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
7 |
--------------------------------------------------------------------------------
/AnimationDemo/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/Constructure.suml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/FrescoDemo/.gitignore:
--------------------------------------------------------------------------------
1 | .gradle
2 | /local.properties
3 | /.idea/workspace.xml
4 | /.idea/libraries
5 | .DS_Store
6 | /build
7 | /captures
8 |
--------------------------------------------------------------------------------
/FrescoDemo/.idea/.name:
--------------------------------------------------------------------------------
1 | FrescoDemo
--------------------------------------------------------------------------------
/FrescoDemo/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/FrescoDemo/.idea/copyright/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/FrescoDemo/.idea/dictionaries/JunyiZhou.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/FrescoDemo/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/FrescoDemo/.idea/gradle.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/FrescoDemo/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/FrescoDemo/.idea/runConfigurations.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/FrescoDemo/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/FrescoDemo/FrescoDemo.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/FrescoDemo/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/FrescoDemo/app/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.application'
2 |
3 | android {
4 | compileSdkVersion 22
5 | buildToolsVersion "22.0.1"
6 |
7 | defaultConfig {
8 | applicationId "com.example.junyizhou.frescodemo"
9 | minSdkVersion 15
10 | targetSdkVersion 22
11 | versionCode 1
12 | versionName "1.0"
13 | }
14 | buildTypes {
15 | release {
16 | minifyEnabled false
17 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
18 | }
19 | }
20 | }
21 |
22 | dependencies {
23 | compile fileTree(dir: 'libs', include: ['*.jar'])
24 | compile 'com.android.support:appcompat-v7:21.+'
25 | compile 'com.facebook.fresco:fresco:0.8.1+'
26 | }
27 |
--------------------------------------------------------------------------------
/FrescoDemo/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in C:\andoridIDE\sdk/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the proguardFiles
5 | # directive in build.gradle.
6 | #
7 | # For more details, see
8 | # http://developer.android.com/guide/developing/tools/proguard.html
9 |
10 | # Add any project specific keep options here:
11 |
12 | # If your project uses WebView with JS, uncomment the following
13 | # and specify the fully qualified class name to the JavaScript interface
14 | # class:
15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
16 | # public *;
17 | #}
18 |
--------------------------------------------------------------------------------
/FrescoDemo/app/src/androidTest/java/com/example/junyizhou/frescodemo/ApplicationTest.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.frescodemo;
2 |
3 | import android.app.Application;
4 | import android.test.ApplicationTestCase;
5 |
6 | /**
7 | * Testing Fundamentals
8 | */
9 | public class ApplicationTest extends ApplicationTestCase {
10 | public ApplicationTest() {
11 | super(Application.class);
12 | }
13 | }
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
12 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
24 |
25 |
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/res/menu/menu_main.xml:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/FrescoDemo/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/FrescoDemo/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/FrescoDemo/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/res/mipmap-xhdpi/icon_failure.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/FrescoDemo/app/src/main/res/mipmap-xhdpi/icon_failure.png
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/res/mipmap-xhdpi/icon_placeholder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/FrescoDemo/app/src/main/res/mipmap-xhdpi/icon_placeholder.png
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/res/mipmap-xhdpi/icon_progress_bar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/FrescoDemo/app/src/main/res/mipmap-xhdpi/icon_progress_bar.png
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/res/mipmap-xhdpi/icon_retry.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/FrescoDemo/app/src/main/res/mipmap-xhdpi/icon_retry.png
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/FrescoDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 64dp
6 |
7 |
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 16dp
4 | 16dp
5 |
6 |
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | FrescoDemo
3 |
4 | Hello world!
5 | Settings
6 |
7 |
--------------------------------------------------------------------------------
/FrescoDemo/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/FrescoDemo/build.gradle:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 |
3 | buildscript {
4 | repositories {
5 | jcenter()
6 | }
7 | dependencies {
8 | classpath 'com.android.tools.build:gradle:1.2.3'
9 |
10 | // NOTE: Do not place your application dependencies here; they belong
11 | // in the individual module build.gradle files
12 | }
13 | }
14 |
15 | allprojects {
16 | repositories {
17 | jcenter()
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/FrescoDemo/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m
13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
14 |
15 | # When configured, Gradle will run in incubating parallel mode.
16 | # This option should only be used with decoupled projects. More details, visit
17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
18 | # org.gradle.parallel=true
--------------------------------------------------------------------------------
/FrescoDemo/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/FrescoDemo/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/FrescoDemo/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Apr 10 15:27:10 PDT 2013
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
7 |
--------------------------------------------------------------------------------
/FrescoDemo/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/HealthManager/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 | .gradle
3 | /local.properties
4 | /.idea/workspace.xml
5 | /.idea/libraries
6 | .DS_Store
7 | /build
8 | /captures
9 |
--------------------------------------------------------------------------------
/HealthManager/.idea/.name:
--------------------------------------------------------------------------------
1 | HealthManager
--------------------------------------------------------------------------------
/HealthManager/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/HealthManager/.idea/copyright/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/HealthManager/.idea/dictionaries/JunyiZhou.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/HealthManager/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/HealthManager/.idea/gradle.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/HealthManager/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/HealthManager/.idea/runConfigurations.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/HealthManager/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/HealthManager/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/HealthManager/app/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.application'
2 | apply plugin: 'com.neenbedankt.android-apt'
3 |
4 | android {
5 | compileSdkVersion 22
6 | buildToolsVersion "22.0.1"
7 |
8 | defaultConfig {
9 | applicationId "com.example.songyang.healthmanager"
10 | minSdkVersion 15
11 | targetSdkVersion 22
12 | versionCode 1
13 | versionName "1.0"
14 | }
15 | buildTypes {
16 | release {
17 | minifyEnabled false
18 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
19 | }
20 | }
21 | }
22 |
23 | dependencies {
24 | compile fileTree(dir: 'libs', include: ['*.jar'])
25 | testCompile 'junit:junit:4.12'
26 | apt 'com.pushtorefresh.storio:sqlite-annotations-processor:1.8.0'
27 | compile 'com.android.support:appcompat-v7:22.2.1'
28 | compile 'com.android.support:design:22.2.1'
29 | compile 'com.pushtorefresh.storio:sqlite:1.8.0'
30 | compile 'com.pushtorefresh.storio:sqlite-annotations:1.8.0'
31 | compile 'io.reactivex:rxandroid:1.1.0'
32 | compile 'io.reactivex:rxjava:1.1.0'
33 | compile 'com.google.code.gson:gson:2.4'
34 | compile 'org.greenrobot:eventbus:3.0.0'
35 | compile 'com.android.support:recyclerview-v7:22.2.1'
36 | compile 'com.android.support:cardview-v7:22.2.1'
37 | compile 'com.facebook.fresco:fresco:0.8.1'
38 | compile 'com.android.support:support-v4:22.2.1'
39 | compile 'com.github.doctoror.aspectratiolayout:library:1.0.3'
40 | }
41 |
--------------------------------------------------------------------------------
/HealthManager/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in C:\andoridIDE\sdk/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the proguardFiles
5 | # directive in build.gradle.
6 | #
7 | # For more details, see
8 | # http://developer.android.com/guide/developing/tools/proguard.html
9 |
10 | # Add any project specific keep options here:
11 |
12 | # If your project uses WebView with JS, uncomment the following
13 | # and specify the fully qualified class name to the JavaScript interface
14 | # class:
15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
16 | # public *;
17 | #}
18 |
--------------------------------------------------------------------------------
/HealthManager/app/src/androidTest/java/com/example/songyang/healthmanager/ApplicationTest.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager;
2 |
3 | import android.app.Application;
4 | import android.test.ApplicationTestCase;
5 |
6 | /**
7 | * Testing Fundamentals
8 | */
9 | public class ApplicationTest extends ApplicationTestCase {
10 | public ApplicationTest() {
11 | super(Application.class);
12 | }
13 | }
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/HealthManagerApplication.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager;
2 |
3 | import android.app.Application;
4 | import android.content.Context;
5 |
6 | import com.example.songyang.healthmanager.bean.UserBean;
7 | import com.example.songyang.healthmanager.db.DBManager;
8 | import com.facebook.drawee.backends.pipeline.Fresco;
9 |
10 | /**
11 | * Created by SongYang on 2016/4/12.
12 | */
13 | public class HealthManagerApplication extends Application {
14 | private static Context mContext;
15 |
16 | public static Context getContext() {
17 | return mContext;
18 | }
19 |
20 | @Override
21 | public void onCreate() {
22 | super.onCreate();
23 | mContext = getApplicationContext();
24 | Fresco.initialize(this);
25 | initData();
26 | }
27 |
28 | public void initData() {
29 | UserBean userBean = new UserBean();
30 | userBean.setUserid(1);
31 | userBean.setUsername("admin");
32 | userBean.setSex("m");
33 | userBean.setAge(20);
34 | userBean.setPassword("123456");
35 | userBean.setPhone("13800000000");
36 | userBean.setIdcard("100000000000000000");
37 | userBean.setNation("汉族");
38 | DBManager.getInstance().putUser(userBean);
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/bean/StepBean.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.bean;
2 |
3 | import com.pushtorefresh.storio.sqlite.annotations.StorIOSQLiteColumn;
4 | import com.pushtorefresh.storio.sqlite.annotations.StorIOSQLiteType;
5 |
6 | /**
7 | * Created by SongYang on 2016/4/14.
8 | */
9 | @StorIOSQLiteType(table = "step")
10 | public class StepBean {
11 | @StorIOSQLiteColumn(name = "stepid", key = true)
12 | int stepid;
13 |
14 | @StorIOSQLiteColumn(name = "count")
15 | int count;
16 |
17 | @StorIOSQLiteColumn(name = "time")
18 | long time;
19 |
20 | public int getStepid() {
21 | return stepid;
22 | }
23 |
24 | public void setStepid(int stepid) {
25 | this.stepid = stepid;
26 | }
27 |
28 | public int getCount() {
29 | return count;
30 | }
31 |
32 | public void setCount(int count) {
33 | this.count = count;
34 | }
35 |
36 | public long getDate() {
37 | return time;
38 | }
39 |
40 | public void setDate(long date) {
41 | this.time = date;
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/component/IOnItemClickListener.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.component;
2 |
3 | import android.view.View;
4 |
5 | /**
6 | * Created by SongYang on 2016/1/4.
7 | */
8 | public interface IOnItemClickListener {
9 | void onItemClick(View view, int position);
10 | }
11 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/component/IOnItemLongClickListener.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.component;
2 |
3 | import android.view.View;
4 |
5 | /**
6 | * Created by SongYang on 2016/1/4.
7 | */
8 | public interface IOnItemLongClickListener {
9 | void onItemLongClick(View view, int position);
10 | }
11 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/daily/model/DailyModel.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.daily.model;
2 |
3 | import com.example.songyang.healthmanager.bean.StepBean;
4 |
5 | import java.util.List;
6 |
7 | /**
8 | * Created by SongYang on 2016/4/13.
9 | */
10 | public class DailyModel implements IDailyModel {
11 | private List steps;
12 |
13 | @Override
14 | public List getSteps() {
15 | return steps;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/daily/model/IDailyModel.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.daily.model;
2 |
3 | import com.example.songyang.healthmanager.bean.StepBean;
4 |
5 | import java.util.List;
6 |
7 | /**
8 | * Created by SongYang on 2016/4/13.
9 | */
10 | public interface IDailyModel {
11 | List getSteps();
12 | }
13 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/daily/presenter/DailyPresenter.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.daily.presenter;
2 |
3 | import com.example.songyang.healthmanager.bean.StepBean;
4 | import com.example.songyang.healthmanager.daily.model.DailyModel;
5 | import com.example.songyang.healthmanager.daily.model.IDailyModel;
6 | import com.example.songyang.healthmanager.daily.view.IDailyView;
7 |
8 | import java.util.List;
9 |
10 | /**
11 | * Created by SongYang on 2016/4/13.
12 | */
13 | public class DailyPresenter implements IDailyPresenter {
14 | private IDailyModel mDailyModel;
15 | private IDailyView mDailyView;
16 |
17 | public DailyPresenter(IDailyView view) {
18 | mDailyView = view;
19 | mDailyModel = new DailyModel();
20 | }
21 |
22 | @Override
23 | public void loadLineDiagramData() {
24 | List steps = mDailyModel.getSteps();
25 | int[] yParams = {4000, 6000, 8000, 10000};
26 | float[] values = {4500, 6900, 9000};
27 | String[] xParams = {"2016-4-12", "2016-4-13", "2016-4-14"};
28 |
29 | mDailyView.setLineDiagramData(yParams, values, xParams, "步");
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/daily/presenter/IDailyPresenter.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.daily.presenter;
2 |
3 | /**
4 | * Created by SongYang on 2016/4/13.
5 | */
6 | public interface IDailyPresenter {
7 | void loadLineDiagramData();
8 | }
9 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/daily/view/IDailyView.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.daily.view;
2 |
3 | /**
4 | * Created by SongYang on 2016/4/14.
5 | */
6 | public interface IDailyView {
7 | void setLineDiagramData(int[] yParams, float[] values, String[] xParams, String unite);
8 | }
9 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/db/HealthSQLiteOpenHelper.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.db;
2 |
3 | import android.content.Context;
4 | import android.database.sqlite.SQLiteDatabase;
5 | import android.database.sqlite.SQLiteOpenHelper;
6 |
7 | /**
8 | * Created by SongYang on 2016/4/11.
9 | */
10 | public class HealthSQLiteOpenHelper extends SQLiteOpenHelper {
11 | public HealthSQLiteOpenHelper(Context context, String name, int version) {
12 | super(context, name, null, version, null);
13 | }
14 |
15 | @Override
16 | public void onCreate(SQLiteDatabase db) {
17 | db.execSQL(SQLS.CREATE_USER_TABLE);
18 | db.execSQL(SQLS.CREATE_CLINIC_TABLE);
19 | db.execSQL(SQLS.CREATE_HOSPITAL_TABLE);
20 | db.execSQL(SQLS.CREATE_EXAMINATION_TABLE);
21 | }
22 |
23 | @Override
24 | public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
25 |
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/info/model/IUserModel.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.info.model;
2 |
3 | import com.example.songyang.healthmanager.bean.UserBean;
4 |
5 | /**
6 | * Created by SongYang on 2016/4/13.
7 | */
8 | public interface IUserModel {
9 | UserBean get(int id);
10 | }
11 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/info/model/UserModel.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.info.model;
2 |
3 | import com.example.songyang.healthmanager.bean.UserBean;
4 | import com.example.songyang.healthmanager.db.DBManager;
5 |
6 | import java.util.List;
7 |
8 | /**
9 | * Created by SongYang on 2016/4/13.
10 | */
11 | public class UserModel implements IUserModel {
12 | private List users;
13 |
14 | public UserModel() {
15 | users = DBManager.getInstance().getUsers();
16 | }
17 |
18 | @Override
19 | public UserBean get(int id) {
20 | if (users != null) {
21 | for (UserBean user : users) {
22 | if (user.getUserid() == id) {
23 | return user;
24 | }
25 | }
26 | }
27 | return null;
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/info/presenter/IInfoPresenter.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.info.presenter;
2 |
3 | /**
4 | * Created by SongYang on 2016/4/13.
5 | */
6 | public interface IInfoPresenter {
7 | void loadInfo(int userId, String infoType);
8 | }
9 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/info/view/ClinicFragment.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.info.view;
2 |
3 | import android.os.Bundle;
4 | import android.support.v4.app.Fragment;
5 | import android.view.LayoutInflater;
6 | import android.view.View;
7 | import android.view.ViewGroup;
8 |
9 | import com.example.songyang.healthmanager.R;
10 | import com.example.songyang.healthmanager.bean.ClinicBean;
11 | import com.example.songyang.healthmanager.bean.UserBean;
12 |
13 | public class ClinicFragment extends Fragment {
14 | private static final String CLINIC_DATA = "CLINIC_DATA";
15 |
16 | public ClinicFragment() {
17 | }
18 |
19 | public static ClinicFragment newInstance(ClinicBean clinic) {
20 | ClinicFragment fragment = new ClinicFragment();
21 | Bundle args = new Bundle();
22 | args.putParcelable(CLINIC_DATA, clinic);
23 | fragment.setArguments(args);
24 | return fragment;
25 | }
26 |
27 | private ClinicBean clinic;
28 |
29 | @Override
30 | public void onCreate(Bundle savedInstanceState) {
31 | super.onCreate(savedInstanceState);
32 | if (getArguments() != null) {
33 | clinic = getArguments().getParcelable(CLINIC_DATA);
34 | }
35 | }
36 |
37 | @Override
38 | public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
39 | return inflater.inflate(R.layout.fragment_clinic, container, false);
40 | }
41 |
42 | }
43 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/info/view/HospitalFragment.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.info.view;
2 |
3 | import android.os.Bundle;
4 | import android.support.v4.app.Fragment;
5 | import android.view.LayoutInflater;
6 | import android.view.View;
7 | import android.view.ViewGroup;
8 |
9 | import com.example.songyang.healthmanager.R;
10 | import com.example.songyang.healthmanager.bean.HospitalBean;
11 | import com.example.songyang.healthmanager.bean.UserBean;
12 |
13 | public class HospitalFragment extends Fragment {
14 | private static final String HOSPITAL_DATA = "HOSPITAL_DATA";
15 |
16 | public HospitalFragment() {
17 | }
18 |
19 | public static HospitalFragment newInstance(HospitalBean hospital) {
20 | HospitalFragment fragment = new HospitalFragment();
21 | Bundle args = new Bundle();
22 | args.putParcelable(HOSPITAL_DATA, hospital);
23 | fragment.setArguments(args);
24 | return fragment;
25 | }
26 |
27 | private HospitalBean hospital;
28 |
29 | @Override
30 | public void onCreate(Bundle savedInstanceState) {
31 | super.onCreate(savedInstanceState);
32 | if (getArguments() != null) {
33 | hospital = getArguments().getParcelable(HOSPITAL_DATA);
34 | }
35 | }
36 |
37 | @Override
38 | public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
39 | return inflater.inflate(R.layout.fragment_hospital, container, false);
40 | }
41 |
42 | }
43 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/info/view/IInfoView.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.info.view;
2 |
3 | import android.support.v4.app.Fragment;
4 |
5 | /**
6 | * Created by SongYang on 2016/4/21.
7 | */
8 | public interface IInfoView {
9 | void setFragment(Fragment fragment, String title);
10 | }
11 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/info/view/ProfileFragment.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.info.view;
2 |
3 | import android.os.Bundle;
4 | import android.support.v4.app.Fragment;
5 | import android.view.LayoutInflater;
6 | import android.view.View;
7 | import android.view.ViewGroup;
8 |
9 | import com.example.songyang.healthmanager.R;
10 | import com.example.songyang.healthmanager.bean.UserBean;
11 |
12 | public class ProfileFragment extends Fragment {
13 | private static final String PROFILE_DATA = "PROFILE_DATA";
14 |
15 | public ProfileFragment() {
16 | }
17 |
18 | public static ProfileFragment newInstance(UserBean proflie) {
19 | ProfileFragment fragment = new ProfileFragment();
20 | Bundle args = new Bundle();
21 | args.putParcelable(PROFILE_DATA, proflie);
22 | fragment.setArguments(args);
23 | return fragment;
24 | }
25 |
26 | private UserBean proflie;
27 |
28 | @Override
29 | public void onCreate(Bundle savedInstanceState) {
30 | super.onCreate(savedInstanceState);
31 | if (getArguments() != null) {
32 | proflie = getArguments().getParcelable(PROFILE_DATA);
33 | }
34 | }
35 |
36 | @Override
37 | public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
38 | return inflater.inflate(R.layout.fragment_profile, container, false);
39 | }
40 |
41 | }
42 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/login/event/UserLoginEvent.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.login.event;
2 |
3 | /**
4 | * Created by SongYang on 2016/6/11.
5 | */
6 | public class UserLoginEvent {
7 | public final boolean isLogin;
8 |
9 | public UserLoginEvent(boolean isLogin) {
10 | this.isLogin = isLogin;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/login/model/ILoginModel.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.login.model;
2 |
3 | /**
4 | * Created by SongYang on 2016/4/13.
5 | */
6 | public interface ILoginModel {
7 | boolean checkUserAuthority(String userName, String password);
8 | }
9 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/login/model/LoginModel.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.login.model;
2 |
3 | import com.example.songyang.healthmanager.bean.UserBean;
4 | import com.example.songyang.healthmanager.db.DBManager;
5 |
6 | import java.util.List;
7 |
8 | /**
9 | * Created by SongYang on 2016/4/13.
10 | */
11 | public class LoginModel implements ILoginModel {
12 | private List users;
13 |
14 | public LoginModel() {
15 | users = DBManager.getInstance().getUsers();
16 | }
17 |
18 | @Override
19 | public boolean checkUserAuthority(String userName, String password) {
20 | for (UserBean user : users) {
21 | if (user.getUsername().equals(userName) && user.getPassword().equals(password)) {
22 | return true;
23 | }
24 | }
25 | return false;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/login/presenter/ILoginPresenter.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.login.presenter;
2 |
3 | /**
4 | * Created by SongYang on 2016/4/13.
5 | */
6 | public interface ILoginPresenter {
7 | void login(String userName, String password);
8 | }
9 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/login/presenter/LoginPresenter.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.login.presenter;
2 |
3 | import com.example.songyang.healthmanager.login.model.ILoginModel;
4 | import com.example.songyang.healthmanager.login.model.LoginModel;
5 | import com.example.songyang.healthmanager.login.view.ILoginView;
6 |
7 | /**
8 | * Created by SongYang on 2016/4/13.
9 | */
10 | public class LoginPresenter implements ILoginPresenter {
11 |
12 | private ILoginModel mLoginModel;
13 | private ILoginView mLoginView;
14 |
15 | public LoginPresenter(ILoginView view) {
16 | mLoginView = view;
17 | mLoginModel = new LoginModel();
18 | }
19 |
20 | @Override
21 | public void login(String userName, String password) {
22 | boolean result = mLoginModel.checkUserAuthority(userName, password);
23 | mLoginView.showLoginResult(result);
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/login/view/ILoginView.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.login.view;
2 |
3 | /**
4 | * Created by SongYang on 2016/4/21.
5 | */
6 | public interface ILoginView {
7 | void showLoginResult(boolean result);
8 | }
9 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/main/model/IMainModel.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.main.model;
2 |
3 | import com.example.songyang.healthmanager.bean.UserBean;
4 |
5 | /**
6 | * Created by SongYang on 2016/4/13.
7 | */
8 | public interface IMainModel {
9 | UserBean get(int id);
10 | }
11 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/main/model/MainModel.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.main.model;
2 |
3 | import com.example.songyang.healthmanager.bean.UserBean;
4 | import com.example.songyang.healthmanager.db.DBManager;
5 |
6 | import java.util.List;
7 |
8 | /**
9 | * Created by SongYang on 2016/4/13.
10 | */
11 | public class MainModel implements IMainModel {
12 | private List users;
13 |
14 | public MainModel() {
15 | users = DBManager.getInstance().getUsers();
16 | }
17 |
18 | @Override
19 | public UserBean get(int id) {
20 | if (users != null) {
21 | for (UserBean user : users) {
22 | if (user.getUserid() == id) {
23 | return user;
24 | }
25 | }
26 | }
27 | return null;
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/main/presenter/IMainPresenter.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.main.presenter;
2 |
3 | /**
4 | * Created by SongYang on 2016/4/13.
5 | */
6 | public interface IMainPresenter {
7 | void loadUser(int id);
8 | }
9 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/main/presenter/MainPresenter.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.main.presenter;
2 |
3 | import com.example.songyang.healthmanager.bean.UserBean;
4 | import com.example.songyang.healthmanager.main.model.IMainModel;
5 | import com.example.songyang.healthmanager.main.model.MainModel;
6 | import com.example.songyang.healthmanager.main.view.IMainView;
7 |
8 | /**
9 | * Created by SongYang on 2016/4/13.
10 | */
11 | public class MainPresenter implements IMainPresenter{
12 | private IMainModel mUserModel;
13 | private IMainView mMainView;
14 |
15 | public MainPresenter(IMainView view) {
16 | mMainView = view;
17 | mUserModel = new MainModel();
18 | }
19 |
20 | @Override
21 | public void loadUser(int id) {
22 | UserBean user = mUserModel.get(id);
23 | mMainView.setUserName(user.getUsername());
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/main/view/IMainView.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.main.view;
2 |
3 | /**
4 | * Created by SongYang on 2016/4/13.
5 | */
6 | public interface IMainView {
7 | void setUserName(String name);
8 | }
9 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/message/MessageActivity.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.message;
2 |
3 | import android.os.Bundle;
4 | import android.app.Activity;
5 | import android.support.v7.app.AppCompatActivity;
6 | import android.support.v7.widget.Toolbar;
7 | import android.view.View;
8 |
9 | import com.example.songyang.healthmanager.R;
10 |
11 | /**
12 | * Created by SongYang on 2016/4/13.
13 | */
14 | public class MessageActivity extends AppCompatActivity {
15 |
16 | private Toolbar toolbar;
17 |
18 | @Override
19 | protected void onCreate(Bundle savedInstanceState) {
20 | super.onCreate(savedInstanceState);
21 | setContentView(R.layout.activity_message);
22 | initToorbar("消息");
23 | getSupportFragmentManager().beginTransaction().replace(R.id.container, new MessageListFragment()).commit();
24 | }
25 |
26 | public void initToorbar(String title) {
27 | toolbar = (Toolbar) findViewById(R.id.toolbar);
28 | toolbar.setTitle(title);
29 | setSupportActionBar(toolbar);
30 | toolbar.setNavigationIcon(R.drawable.ic_arrow_back_white);
31 | toolbar.setNavigationOnClickListener(new View.OnClickListener() {
32 | @Override
33 | public void onClick(View v) {
34 | finish();
35 | }
36 | });
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/rostrum/model/IRostrumModel.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.rostrum.model;
2 |
3 | import com.example.songyang.healthmanager.bean.StepBean;
4 |
5 | import java.util.List;
6 |
7 | /**
8 | * Created by SongYang on 2016/4/13.
9 | */
10 | public interface IRostrumModel {
11 | List getRostrumData();
12 | }
13 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/rostrum/model/RostrumModel.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.rostrum.model;
2 |
3 | import com.example.songyang.healthmanager.bean.StepBean;
4 |
5 | import java.util.ArrayList;
6 | import java.util.List;
7 |
8 | /**
9 | * Created by SongYang on 2016/4/13.
10 | */
11 | public class RostrumModel implements IRostrumModel {
12 | @Override
13 | public List getRostrumData() {
14 | List rostrumData = new ArrayList<>();
15 | for (int i = 0; i < 5; i++) {
16 | rostrumData.add(String.valueOf(i));
17 | }
18 | return rostrumData;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/rostrum/presenter/IRostrumPresenter.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.rostrum.presenter;
2 |
3 | /**
4 | * Created by SongYang on 2016/4/13.
5 | */
6 | public interface IRostrumPresenter {
7 | void load();
8 | }
9 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/rostrum/presenter/RostrumPresenter.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.rostrum.presenter;
2 |
3 | import com.example.songyang.healthmanager.rostrum.model.IRostrumModel;
4 | import com.example.songyang.healthmanager.rostrum.model.RostrumModel;
5 | import com.example.songyang.healthmanager.rostrum.view.IRostrumView;
6 |
7 | import java.util.List;
8 |
9 | /**
10 | * Created by SongYang on 2016/4/13.
11 | */
12 | public class RostrumPresenter implements IRostrumPresenter {
13 | private IRostrumModel mRostrumModel;
14 | private IRostrumView mRostrumView;
15 |
16 | public RostrumPresenter(IRostrumView view) {
17 | mRostrumView = view;
18 | mRostrumModel = new RostrumModel();
19 | }
20 |
21 | @Override
22 | public void load() {
23 | List rostrumData = mRostrumModel.getRostrumData();
24 | mRostrumView.setRostrumData(rostrumData);
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/rostrum/view/IRostrumView.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.rostrum.view;
2 |
3 | import java.util.List;
4 |
5 | /**
6 | * Created by SongYang on 2016/4/14.
7 | */
8 | public interface IRostrumView {
9 | void setRostrumData(List rostrumData);
10 | }
11 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/treat/model/ITreatModel.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.treat.model;
2 |
3 | import java.util.List;
4 |
5 | /**
6 | * Created by SongYang on 2016/4/13.
7 | */
8 | public interface ITreatModel {
9 | List getDepartmentData();
10 | }
11 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/treat/model/TreatModel.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.treat.model;
2 |
3 | import java.util.ArrayList;
4 | import java.util.List;
5 |
6 | /**
7 | * Created by SongYang on 2016/4/13.
8 | */
9 | public class TreatModel implements ITreatModel {
10 |
11 | @Override
12 | public List getDepartmentData() {
13 | List departmentData = new ArrayList<>();
14 | departmentData.add("");
15 | departmentData.add("儿科");
16 | departmentData.add("皮肤科");
17 | departmentData.add("内科");
18 | departmentData.add("中医科");
19 | departmentData.add("眼科");
20 | departmentData.add("口腔科");
21 | departmentData.add("骨伤科");
22 | departmentData.add("耳鼻喉科");
23 | departmentData.add("妇科");
24 | return departmentData;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/treat/presenter/ITreatPresenter.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.treat.presenter;
2 |
3 | /**
4 | * Created by SongYang on 2016/4/13.
5 | */
6 | public interface ITreatPresenter {
7 | void load();
8 | }
9 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/treat/presenter/TreatPresenter.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.treat.presenter;
2 |
3 | import com.example.songyang.healthmanager.treat.model.TreatModel;
4 | import com.example.songyang.healthmanager.treat.model.ITreatModel;
5 | import com.example.songyang.healthmanager.treat.view.ITreatView;
6 |
7 | import java.util.List;
8 |
9 | /**
10 | * Created by SongYang on 2016/4/13.
11 | */
12 | public class TreatPresenter implements ITreatPresenter {
13 | private ITreatModel mTreatModel;
14 | private ITreatView mTreatView;
15 |
16 | public TreatPresenter(ITreatView view) {
17 | mTreatView = view;
18 | mTreatModel = new TreatModel();
19 | }
20 |
21 | @Override
22 | public void load() {
23 | List departments = mTreatModel.getDepartmentData();
24 | mTreatView.setDepartmentData(departments);
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/treat/view/DepartmentDetailActivity.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.treat.view;
2 |
3 | import android.os.Bundle;
4 | import android.app.Activity;
5 | import android.support.v7.app.AppCompatActivity;
6 | import android.support.v7.widget.Toolbar;
7 | import android.view.View;
8 |
9 | import com.example.songyang.healthmanager.R;
10 | import com.example.songyang.healthmanager.message.MessageListFragment;
11 |
12 | /**
13 | * Created by SongYang on 2016/4/13.
14 | */
15 | public class DepartmentDetailActivity extends AppCompatActivity {
16 |
17 | private Toolbar toolbar;
18 |
19 | @Override
20 | protected void onCreate(Bundle savedInstanceState) {
21 | super.onCreate(savedInstanceState);
22 | setContentView(R.layout.activity_department_detail);
23 |
24 | initToorbar(getIntent().getStringExtra("DEPARTMENT_NAME"));
25 | getSupportFragmentManager().beginTransaction().replace(R.id.container, new DoctorListFragment()).commit();
26 | }
27 |
28 | public void initToorbar(String title) {
29 | toolbar = (Toolbar) findViewById(R.id.toolbar);
30 | toolbar.setTitle(title);
31 | setSupportActionBar(toolbar);
32 | toolbar.setNavigationIcon(R.drawable.ic_arrow_back_white);
33 | toolbar.setNavigationOnClickListener(new View.OnClickListener() {
34 | @Override
35 | public void onClick(View v) {
36 | finish();
37 | }
38 | });
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/treat/view/ITreatView.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.treat.view;
2 |
3 | import java.util.List;
4 |
5 | /**
6 | * Created by SongYang on 2016/4/14.
7 | */
8 | public interface ITreatView {
9 | void setDepartmentData(List departments);
10 | }
11 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/java/com/example/songyang/healthmanager/treat/view/TreatDetailActivity.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager.treat.view;
2 |
3 | import android.os.Bundle;
4 | import android.app.Activity;
5 | import android.support.v7.app.AppCompatActivity;
6 | import android.support.v7.widget.Toolbar;
7 | import android.view.View;
8 |
9 | import com.example.songyang.healthmanager.R;
10 |
11 | /**
12 | * Created by SongYang on 2016/4/13.
13 | */
14 | public class TreatDetailActivity extends AppCompatActivity {
15 |
16 | private Toolbar toolbar;
17 |
18 | @Override
19 | protected void onCreate(Bundle savedInstanceState) {
20 | super.onCreate(savedInstanceState);
21 | setContentView(R.layout.activity_treat_detail);
22 |
23 | initToorbar(getIntent().getStringExtra("CHAT_NAME"));
24 | }
25 |
26 | public void initToorbar(String title) {
27 | toolbar = (Toolbar) findViewById(R.id.toolbar);
28 | toolbar.setTitle(title);
29 | setSupportActionBar(toolbar);
30 | toolbar.setNavigationIcon(R.drawable.ic_arrow_back_white);
31 | toolbar.setNavigationOnClickListener(new View.OnClickListener() {
32 | @Override
33 | public void onClick(View v) {
34 | finish();
35 | }
36 | });
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-v21/ic_menu_camera.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
12 |
13 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-v21/ic_menu_gallery.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-v21/ic_menu_manage.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-v21/ic_menu_send.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-v21/ic_menu_share.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-v21/ic_menu_slideshow.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/hit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/hit.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/ic_account.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/ic_account.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/ic_account_box.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/ic_account_box.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/ic_arrow_back_white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/ic_arrow_back_white.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/ic_description.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/ic_description.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/ic_edit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/ic_edit.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/ic_failure.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/ic_failure.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/ic_info.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/ic_info.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/ic_message_white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/ic_message_white.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/ic_phone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/ic_phone.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/ic_placeholder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/ic_placeholder.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/ic_progress_bar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/ic_progress_bar.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/ic_retry.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/ic_retry.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/ic_send_grey.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/ic_send_grey.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/ic_settings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/ic_settings.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/item_image_placeholder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/item_image_placeholder.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/linechart_bubble.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/linechart_bubble.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable-xhdpi/linechart_point.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/drawable-xhdpi/linechart_point.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable/btn_doctor_operation.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 |
7 |
8 |
9 | -
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable/bubble_blue.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable/bubble_gray.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/drawable/side_nav_bar.xml:
--------------------------------------------------------------------------------
1 |
3 |
9 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/layout/fragment_main.xml:
--------------------------------------------------------------------------------
1 |
10 |
11 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/layout/fragment_recycler_list.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
11 |
12 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/layout/item_department.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
16 |
17 |
25 |
26 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/layout/item_message.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
15 |
16 |
22 |
23 |
29 |
30 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/layout/item_search.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
15 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/menu/activity_main_drawer.xml:
--------------------------------------------------------------------------------
1 |
2 |
37 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/menu/main2.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
9 |
10 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/menu/menu_main.xml:
--------------------------------------------------------------------------------
1 |
5 |
10 |
11 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/values-v21/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 64dp
6 |
7 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #00AAff
4 | #0099FF
5 | #FF6633
6 |
7 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 16dp
4 | 16dp
5 | 16dp
6 | 8dp
7 |
8 | 16dp
9 | 160dp
10 |
11 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/values/drawables.xml:
--------------------------------------------------------------------------------
1 |
2 | - @android:drawable/ic_menu_camera
3 | - @android:drawable/ic_menu_gallery
4 | - @android:drawable/ic_menu_slideshow
5 | - @android:drawable/ic_menu_manage
6 | - @android:drawable/ic_menu_share
7 | - @android:drawable/ic_menu_send
8 |
9 |
--------------------------------------------------------------------------------
/HealthManager/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
11 |
12 |
13 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/HealthManager/app/src/test/java/com/example/songyang/healthmanager/ExampleUnitTest.java:
--------------------------------------------------------------------------------
1 | package com.example.songyang.healthmanager;
2 |
3 | import org.junit.Test;
4 |
5 | import static org.junit.Assert.*;
6 |
7 | /**
8 | * To work on unit tests, switch the Test Artifact in the Build Variants view.
9 | */
10 | public class ExampleUnitTest {
11 | @Test
12 | public void addition_isCorrect() throws Exception {
13 | assertEquals(4, 2 + 2);
14 | }
15 | }
--------------------------------------------------------------------------------
/HealthManager/build.gradle:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 |
3 | buildscript {
4 | repositories {
5 | jcenter()
6 | }
7 | dependencies {
8 | classpath 'com.android.tools.build:gradle:1.5.0'
9 | classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
10 | // NOTE: Do not place your application dependencies here; they belong
11 | // in the individual module build.gradle files
12 | }
13 | }
14 |
15 | allprojects {
16 | repositories {
17 | jcenter()
18 | }
19 | }
20 |
21 | task clean(type: Delete) {
22 | delete rootProject.buildDir
23 | }
24 |
--------------------------------------------------------------------------------
/HealthManager/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) userBeans:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m
13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
14 |
15 | # When configured, Gradle will run in incubating parallel mode.
16 | # This option should only be used with decoupled projects. More details, visit
17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
18 | # org.gradle.parallel=true
--------------------------------------------------------------------------------
/HealthManager/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/HealthManager/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Oct 21 11:34:03 PDT 2015
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.8-all.zip
7 |
--------------------------------------------------------------------------------
/HealthManager/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/HealthManager/手机医疗服务数据库设计.docx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/HealthManager/手机医疗服务数据库设计.docx
--------------------------------------------------------------------------------
/ImageHandleDemo/.gitignore:
--------------------------------------------------------------------------------
1 | .gradle
2 | /local.properties
3 | /.idea/workspace.xml
4 | /.idea/libraries
5 | .DS_Store
6 | /build
7 | /captures
8 |
--------------------------------------------------------------------------------
/ImageHandleDemo/.idea/.name:
--------------------------------------------------------------------------------
1 | ImageHandleDemo
--------------------------------------------------------------------------------
/ImageHandleDemo/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/ImageHandleDemo/.idea/copyright/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/ImageHandleDemo/.idea/dictionaries/JunyiZhou.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/ImageHandleDemo/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/ImageHandleDemo/.idea/gradle.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/ImageHandleDemo/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ImageHandleDemo/.idea/runConfigurations.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/ImageHandleDemo/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/ImageHandleDemo/ImageHandleDemo.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/ImageHandleDemo/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/ImageHandleDemo/app/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.application'
2 |
3 | android {
4 | compileSdkVersion 22
5 | buildToolsVersion "22.0.1"
6 |
7 | defaultConfig {
8 | applicationId "com.example.junyizhou.imagehandledemo"
9 | minSdkVersion 14
10 | targetSdkVersion 22
11 | versionCode 1
12 | versionName "1.0"
13 | }
14 | buildTypes {
15 | release {
16 | minifyEnabled false
17 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
18 | }
19 | }
20 | }
21 |
22 | dependencies {
23 | compile fileTree(dir: 'libs', include: ['*.jar'])
24 | compile 'com.android.support:appcompat-v7:22+'
25 | compile 'com.github.doctoror.aspectratiolayout:library:1.0.3'
26 | compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.4'
27 | compile 'com.android.support:recyclerview-v7:21.+'
28 | compile 'com.android.support:cardview-v7:21.+'
29 | compile 'com.facebook.fresco:fresco:0.8.1+'
30 | }
31 |
--------------------------------------------------------------------------------
/ImageHandleDemo/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in C:\andoridIDE\sdk/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the proguardFiles
5 | # directive in build.gradle.
6 | #
7 | # For more details, see
8 | # http://developer.android.com/guide/developing/tools/proguard.html
9 |
10 | # Add any project specific keep options here:
11 |
12 | # If your project uses WebView with JS, uncomment the following
13 | # and specify the fully qualified class name to the JavaScript interface
14 | # class:
15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
16 | # public *;
17 | #}
18 |
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/androidTest/java/com/example/junyizhou/imagehandledemo/ApplicationTest.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.imagehandledemo;
2 |
3 | import android.app.Application;
4 | import android.test.ApplicationTestCase;
5 |
6 | /**
7 | * Testing Fundamentals
8 | */
9 | public class ApplicationTest extends ApplicationTestCase {
10 | public ApplicationTest() {
11 | super(Application.class);
12 | }
13 | }
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_abdominalmuscles.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_abdominalmuscles.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_awesome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_awesome.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_batman.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_batman.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_baymaxandjianjian.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_baymaxandjianjian.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_beaddicted.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_beaddicted.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_beastmode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_beastmode.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_beyourself.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_beyourself.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_broccoli.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_broccoli.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_captainamerica.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_captainamerica.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_catwoman.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_catwoman.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_cute.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_cute.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_darkcuisine.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_darkcuisine.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_death.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_death.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_dontwait.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_dontwait.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_eatingisabelief.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_eatingisabelief.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_energycore.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_energycore.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_energyring.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_energyring.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_fallinlove.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_fallinlove.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_fight.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_fight.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_ftmodu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_ftmodu.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_girlonfire.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_girlonfire.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_healthyandnature.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_healthyandnature.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_hulk.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_hulk.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_ironman.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_ironman.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_itsfittime.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_itsfittime.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_letsrock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_letsrock.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_liftiron.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_liftiron.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_loki.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_loki.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_megabotfight.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_megabotfight.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_megabotnormal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_megabotnormal.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_menzerna.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_menzerna.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_moring.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_moring.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_noface.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_noface.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_onfire.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_onfire.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_push.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_push.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_run.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_run.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_runtoendless.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_runtoendless.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_shield.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_shield.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_shout.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_shout.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_soil.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_soil.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_stamp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_stamp.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_steak.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_steak.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_takemefly.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_takemefly.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_thorshammer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_thorshammer.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_tobebatman.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_tobebatman.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_vavenger.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_vavenger.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_vsangel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_vsangel.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_warmupgroup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_warmupgroup.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_wolverine.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_wolverine.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/assets/decals/decal_youneedfatloss.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/assets/decals/decal_youneedfatloss.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/java/com/example/junyizhou/imagehandledemo/activity/PageActivity.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.imagehandledemo.activity;
2 |
3 | import android.os.Bundle;
4 | import android.app.Activity;
5 |
6 | import com.example.junyizhou.imagehandledemo.R;
7 |
8 | public class PageActivity extends Activity {
9 |
10 | @Override
11 | protected void onCreate(Bundle savedInstanceState) {
12 | super.onCreate(savedInstanceState);
13 | setContentView(R.layout.activity_page);
14 | }
15 |
16 | }
17 |
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/drawable-xhdpi/clock_cexit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/res/drawable-xhdpi/clock_cexit.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/drawable-xhdpi/demo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/res/drawable-xhdpi/demo.jpg
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/drawable-xhdpi/demo1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/res/drawable-xhdpi/demo1.jpg
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/drawable-xhdpi/ic_camera.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/res/drawable-xhdpi/ic_camera.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/drawable-xhdpi/ic_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/res/drawable-xhdpi/ic_close.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/drawable-xhdpi/page1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/res/drawable-xhdpi/page1.jpg
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/drawable-xhdpi/page2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/res/drawable-xhdpi/page2.jpg
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/drawable/main_func_text_color.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/layout/activity_media_picker.xml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/layout/activity_page.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/layout/item_dical.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
17 |
18 |
25 |
26 |
27 |
28 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/menu/menu_main.xml:
--------------------------------------------------------------------------------
1 |
5 |
11 |
12 |
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/values-v21/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 64dp
6 |
7 |
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #00000000
4 | #ffffffff
5 | #ff999999
6 | #ff666666
7 | #ff333333
8 | #ff000000
9 |
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 16dp
4 | 16dp
5 |
6 |
--------------------------------------------------------------------------------
/ImageHandleDemo/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
15 |
19 |
20 |
--------------------------------------------------------------------------------
/ImageHandleDemo/build.gradle:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 |
3 | buildscript {
4 | repositories {
5 | jcenter()
6 | }
7 | dependencies {
8 | classpath 'com.android.tools.build:gradle:1.2.3'
9 |
10 | // NOTE: Do not place your application dependencies here; they belong
11 | // in the individual module build.gradle files
12 | }
13 | }
14 |
15 | allprojects {
16 | repositories {
17 | jcenter()
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/ImageHandleDemo/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m
13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
14 |
15 | # When configured, Gradle will run in incubating parallel mode.
16 | # This option should only be used with decoupled projects. More details, visit
17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
18 | # org.gradle.parallel=true
--------------------------------------------------------------------------------
/ImageHandleDemo/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageHandleDemo/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/ImageHandleDemo/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Apr 10 15:27:10 PDT 2013
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
7 |
--------------------------------------------------------------------------------
/ImageHandleDemo/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/.gitignore:
--------------------------------------------------------------------------------
1 | .gradle
2 | /local.properties
3 | /.idea/workspace.xml
4 | /.idea/libraries
5 | .DS_Store
6 | /build
7 | /captures
8 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/.idea/.name:
--------------------------------------------------------------------------------
1 | ImageLoaderDemo
--------------------------------------------------------------------------------
/ImageLoaderDemo/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/.idea/copyright/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/.idea/gradle.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/ImageLoaderDemo.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.application'
2 |
3 | android {
4 | compileSdkVersion 22
5 | buildToolsVersion "22.0.1"
6 |
7 | defaultConfig {
8 | applicationId "com.example.junyizhou.imageloaderdemo"
9 | minSdkVersion 14
10 | targetSdkVersion 22
11 | versionCode 1
12 | versionName "1.0"
13 | }
14 | buildTypes {
15 | release {
16 | minifyEnabled false
17 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
18 | }
19 | }
20 | }
21 |
22 | dependencies {
23 | compile fileTree(dir: 'libs', include: ['*.jar'])
24 | compile 'com.android.support:appcompat-v7:22.+'
25 | }
26 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in C:\andoridIDE\sdk/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the proguardFiles
5 | # directive in build.gradle.
6 | #
7 | # For more details, see
8 | # http://developer.android.com/guide/developing/tools/proguard.html
9 |
10 | # Add any project specific keep options here:
11 |
12 | # If your project uses WebView with JS, uncomment the following
13 | # and specify the fully qualified class name to the JavaScript interface
14 | # class:
15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
16 | # public *;
17 | #}
18 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/src/androidTest/java/com/example/junyizhou/imageloaderdemo/ApplicationTest.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.imageloaderdemo;
2 |
3 | import android.app.Application;
4 | import android.test.ApplicationTestCase;
5 |
6 | /**
7 | * Testing Fundamentals
8 | */
9 | public class ApplicationTest extends ApplicationTestCase {
10 | public ApplicationTest() {
11 | super(Application.class);
12 | }
13 | }
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
10 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/src/main/java/com/example/junyizhou/imageloaderdemo/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.imageloaderdemo;
2 |
3 | import android.support.v7.app.ActionBarActivity;
4 | import android.os.Bundle;
5 | import android.support.v7.app.AppCompatActivity;
6 | import android.view.Menu;
7 | import android.view.MenuItem;
8 |
9 |
10 | public class MainActivity extends AppCompatActivity {
11 |
12 | @Override
13 | protected void onCreate(Bundle savedInstanceState) {
14 | super.onCreate(savedInstanceState);
15 | setContentView(R.layout.activity_main);
16 | }
17 |
18 | @Override
19 | public boolean onCreateOptionsMenu(Menu menu) {
20 | // Inflate the menu; this adds items to the action bar if it is present.
21 | getMenuInflater().inflate(R.menu.menu_main, menu);
22 | return true;
23 | }
24 |
25 | @Override
26 | public boolean onOptionsItemSelected(MenuItem item) {
27 | // Handle action bar item clicks here. The action bar will
28 | // automatically handle clicks on the Home/Up button, so long
29 | // as you specify a parent activity in AndroidManifest.xml.
30 | int id = item.getItemId();
31 |
32 | //noinspection SimplifiableIfStatement
33 | if (id == R.id.action_settings) {
34 | return true;
35 | }
36 |
37 | return super.onOptionsItemSelected(item);
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/src/main/res/menu/menu_main.xml:
--------------------------------------------------------------------------------
1 |
4 |
6 |
7 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageLoaderDemo/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageLoaderDemo/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageLoaderDemo/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageLoaderDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 64dp
6 |
7 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 16dp
4 | 16dp
5 |
6 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ImageLoaderDemo
3 |
4 | Hello world!
5 | Settings
6 |
7 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/build.gradle:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 |
3 | buildscript {
4 | repositories {
5 | jcenter()
6 | }
7 | dependencies {
8 | classpath 'com.android.tools.build:gradle:1.2.3'
9 |
10 | // NOTE: Do not place your application dependencies here; they belong
11 | // in the individual module build.gradle files
12 | }
13 | }
14 |
15 | allprojects {
16 | repositories {
17 | jcenter()
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m
13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
14 |
15 | # When configured, Gradle will run in incubating parallel mode.
16 | # This option should only be used with decoupled projects. More details, visit
17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
18 | # org.gradle.parallel=true
--------------------------------------------------------------------------------
/ImageLoaderDemo/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/ImageLoaderDemo/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/ImageLoaderDemo/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Apr 10 15:27:10 PDT 2013
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
7 |
--------------------------------------------------------------------------------
/ImageLoaderDemo/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/.gitignore:
--------------------------------------------------------------------------------
1 | .gradle
2 | /local.properties
3 | /.idea/workspace.xml
4 | /.idea/libraries
5 | .DS_Store
6 | /build
7 | /captures
8 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/.idea/.name:
--------------------------------------------------------------------------------
1 | RecyclerViewDemo
--------------------------------------------------------------------------------
/RecyclerViewDemo/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/.idea/copyright/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/.idea/dictionaries/JunyiZhou.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/.idea/gradle.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/.idea/runConfigurations.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/RecyclerViewDemo.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.application'
2 |
3 | android {
4 | compileSdkVersion 21
5 | buildToolsVersion "21.0.2"
6 |
7 | defaultConfig {
8 | applicationId "com.example.junyizhou.recyclerviewdemo"
9 | minSdkVersion 15
10 | targetSdkVersion 22
11 | versionCode 1
12 | versionName "1.0"
13 | }
14 | buildTypes {
15 | release {
16 | minifyEnabled false
17 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
18 | }
19 | }
20 | }
21 |
22 | dependencies {
23 | compile fileTree(dir: 'libs', include: ['*.jar'])
24 | compile 'com.android.support:appcompat-v7:21.+'
25 | compile 'com.android.support:recyclerview-v7:21.+'
26 | compile 'com.android.support:cardview-v7:21.+'
27 | compile 'com.github.doctoror.aspectratiolayout:library:1.0.3'
28 | compile files('libs/robotium-solo-5.5.3.jar')
29 | compile files('libs/robotium-solo-5.5.3-javadoc.jar')
30 | androidTestCompile fileTree(dir: 'libs', include: ['robotium-solo-5.5.3.jar'])
31 | testCompile 'junit:junit:4.12'
32 | }
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/libs/robotium-solo-5.5.3-javadoc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RecyclerViewDemo/app/libs/robotium-solo-5.5.3-javadoc.jar
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/libs/robotium-solo-5.5.3.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RecyclerViewDemo/app/libs/robotium-solo-5.5.3.jar
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in C:\andoridIDE\sdk/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the proguardFiles
5 | # directive in build.gradle.
6 | #
7 | # For more details, see
8 | # http://developer.android.com/guide/developing/tools/proguard.html
9 |
10 | # Add any project specific keep options here:
11 |
12 | # If your project uses WebView with JS, uncomment the following
13 | # and specify the fully qualified class name to the JavaScript interface
14 | # class:
15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
16 | # public *;
17 | #}
18 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/androidTest/java/com/example/junyizhou/recyclerviewdemo/ApplicationTest.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.recyclerviewdemo;
2 |
3 | import android.app.Application;
4 | import android.test.ApplicationTestCase;
5 |
6 | /**
7 | * Testing Fundamentals
8 | */
9 | public class ApplicationTest extends ApplicationTestCase {
10 | public ApplicationTest() {
11 | super(Application.class);
12 | }
13 | }
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
10 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/java/com/example/junyizhou/recyclerviewdemo/decoration/DividerItemDecoration.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RecyclerViewDemo/app/src/main/java/com/example/junyizhou/recyclerviewdemo/decoration/DividerItemDecoration.java
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/java/com/example/junyizhou/recyclerviewdemo/foundation/IOnItemClickListener.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RecyclerViewDemo/app/src/main/java/com/example/junyizhou/recyclerviewdemo/foundation/IOnItemClickListener.java
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/java/com/example/junyizhou/recyclerviewdemo/foundation/IOnItemLongClickListener.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RecyclerViewDemo/app/src/main/java/com/example/junyizhou/recyclerviewdemo/foundation/IOnItemLongClickListener.java
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/layout/fragment_recycler_list.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
11 |
12 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/layout/item_first.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
14 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/layout/item_grid.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
14 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/layout/item_linear.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
14 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/layout/item_second.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
14 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/layout/item_third.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
14 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/menu/menu_main.xml:
--------------------------------------------------------------------------------
1 |
4 |
6 |
7 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RecyclerViewDemo/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RecyclerViewDemo/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RecyclerViewDemo/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RecyclerViewDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 64dp
6 |
7 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 16dp
4 | 16dp
5 |
6 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | RecyclerViewDemo
3 |
4 | Hello world!
5 | Settings
6 |
7 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/build.gradle:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 |
3 | buildscript {
4 | repositories {
5 | jcenter()
6 | }
7 | dependencies {
8 | classpath 'com.android.tools.build:gradle:1.2.3'
9 |
10 | // NOTE: Do not place your application dependencies here; they belong
11 | // in the individual module build.gradle files
12 | }
13 | }
14 |
15 | allprojects {
16 | repositories {
17 | jcenter()
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m
13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
14 |
15 | # When configured, Gradle will run in incubating parallel mode.
16 | # This option should only be used with decoupled projects. More details, visit
17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
18 | # org.gradle.parallel=true
--------------------------------------------------------------------------------
/RecyclerViewDemo/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RecyclerViewDemo/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/RecyclerViewDemo/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Apr 10 15:27:10 PDT 2013
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
7 |
--------------------------------------------------------------------------------
/RecyclerViewDemo/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/RxJavaDemo/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 | .gradle
3 | /local.properties
4 | /.idea/workspace.xml
5 | /.idea/libraries
6 | .DS_Store
7 | /build
8 | /captures
9 |
--------------------------------------------------------------------------------
/RxJavaDemo/.idea/.name:
--------------------------------------------------------------------------------
1 | RxJavaDemo
--------------------------------------------------------------------------------
/RxJavaDemo/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/RxJavaDemo/.idea/copyright/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/RxJavaDemo/.idea/dictionaries/JunyiZhou.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/RxJavaDemo/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/RxJavaDemo/.idea/gradle.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/RxJavaDemo/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/RxJavaDemo/.idea/runConfigurations.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/RxJavaDemo/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.application'
2 | apply plugin: 'com.android.databinding'
3 |
4 | android {
5 | compileSdkVersion 22
6 | buildToolsVersion "22.0.1"
7 |
8 | defaultConfig {
9 | applicationId "com.example.junyizhou.rxjavademo"
10 | minSdkVersion 15
11 | targetSdkVersion 22
12 | versionCode 1
13 | versionName "1.0"
14 | }
15 | buildTypes {
16 | release {
17 | minifyEnabled false
18 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
19 | }
20 | }
21 | }
22 |
23 | dependencies {
24 | compile fileTree(dir: 'libs', include: ['*.jar'])
25 | testCompile 'junit:junit:4.12'
26 | compile 'com.android.support:appcompat-v7:22.2.1'
27 | compile 'com.android.support:design:22.2.1'
28 | compile 'io.reactivex:rxandroid:1.1.0'
29 | compile 'io.reactivex:rxjava:1.1.0'
30 | compile 'com.google.code.gson:gson:2.3'
31 | compile 'com.squareup.retrofit:retrofit:2.0.0-beta2'
32 | compile 'com.squareup.retrofit:converter-gson:2.0.0-beta2'
33 | compile 'com.squareup.retrofit:adapter-rxjava:2.0.0-beta2'
34 | compile 'com.squareup.okhttp:okhttp:2.4.0'
35 | compile 'com.github.bumptech.glide:glide:3.5.2'
36 | compile 'com.android.support:support-v4:22.0.0'
37 | }
38 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in C:\andoridIDE\sdk/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the proguardFiles
5 | # directive in build.gradle.
6 | #
7 | # For more details, see
8 | # http://developer.android.com/guide/developing/tools/proguard.html
9 |
10 | # Add any project specific keep options here:
11 |
12 | # If your project uses WebView with JS, uncomment the following
13 | # and specify the fully qualified class name to the JavaScript interface
14 | # class:
15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
16 | # public *;
17 | #}
18 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/androidTest/java/com/example/junyizhou/rxjavademo/ApplicationTest.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.rxjavademo;
2 |
3 | import android.app.Application;
4 | import android.test.ApplicationTestCase;
5 |
6 | /**
7 | * Testing Fundamentals
8 | */
9 | public class ApplicationTest extends ApplicationTestCase {
10 | public ApplicationTest() {
11 | super(Application.class);
12 | }
13 | }
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
15 |
16 |
20 |
21 |
22 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/java/com/example/junyizhou/rxjavademo/RxJavaDemoApplication.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.rxjavademo;
2 |
3 | import android.app.Application;
4 |
5 | import com.example.junyizhou.rxjavademo.imageloader.RxImageLoader;
6 |
7 | /**
8 | * Created by JunyiZhou on 2016/3/7.
9 | */
10 | public class RxJavaDemoApplication extends Application {
11 | @Override
12 | public void onCreate() {
13 | super.onCreate();
14 | RxImageLoader.init(this);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/java/com/example/junyizhou/rxjavademo/api/ApiManager.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.rxjavademo.api;
2 |
3 | import retrofit.GsonConverterFactory;
4 | import retrofit.Retrofit;
5 | import retrofit.RxJavaCallAdapterFactory;
6 |
7 | /**
8 | * Created by JunyiZhou on 2016/3/2.
9 | */
10 | public class ApiManager {
11 | private static final String BASE_URL = "http://192.168.51.43:8080/TomcatTest/";
12 | private static final Retrofit retrofit = new Retrofit
13 | .Builder()
14 | .baseUrl(BASE_URL)
15 | .addConverterFactory(GsonConverterFactory.create())
16 | .addCallAdapterFactory(RxJavaCallAdapterFactory.create())
17 | .build();
18 | public static final ApiManagerService apiManager = retrofit.create(ApiManagerService.class);
19 |
20 | public static ApiManagerService getInstance() {
21 | return apiManager;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/java/com/example/junyizhou/rxjavademo/api/ApiManagerService.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.rxjavademo.api;
2 |
3 | import android.graphics.Bitmap;
4 |
5 | import com.example.junyizhou.rxjavademo.model.User;
6 | import com.example.junyizhou.rxjavademo.model.WeatherData;
7 |
8 | import retrofit.Call;
9 | import retrofit.Response;
10 | import retrofit.http.GET;
11 | import retrofit.http.Path;
12 | import retrofit.http.Query;
13 | import retrofit.http.Url;
14 | import rx.Observable;
15 |
16 | /**
17 | * Created by JunyiZhou on 2016/3/2.
18 | */
19 | public interface ApiManagerService {
20 | @GET("api/s/getWeatherInfo")
21 | Observable getWeather(@Query("city") String city);
22 |
23 | @GET("ad/{id}.png")
24 | Observable getBitmap(@Path("id") int id);
25 |
26 | @GET
27 | Observable getBitmap(@Url String imageUrl);
28 |
29 | @GET("api/getUser")
30 | Observable getUser();
31 | }
32 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/java/com/example/junyizhou/rxjavademo/api/BitmapManager.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.rxjavademo.api;
2 |
3 | import com.example.junyizhou.rxjavademo.api.factory.BitmapConverterFactory;
4 |
5 | import retrofit.GsonConverterFactory;
6 | import retrofit.Retrofit;
7 | import retrofit.RxJavaCallAdapterFactory;
8 |
9 | /**
10 | * Created by JunyiZhou on 2016/3/3.
11 | */
12 | public class BitmapManager {
13 | private static final Retrofit retrofit = new Retrofit
14 | .Builder()
15 | .baseUrl("http://img01.cheyipai.com/")
16 | .addConverterFactory(BitmapConverterFactory.create())
17 | .addCallAdapterFactory(RxJavaCallAdapterFactory.create())
18 | .build();
19 | public static final ApiManagerService apiManager = retrofit.create(ApiManagerService.class);
20 |
21 | public static ApiManagerService getInstance() {
22 | return apiManager;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/java/com/example/junyizhou/rxjavademo/api/factory/BitmapConverterFactory.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.rxjavademo.api.factory;
2 |
3 | import com.squareup.okhttp.RequestBody;
4 | import com.squareup.okhttp.ResponseBody;
5 |
6 | import java.lang.annotation.Annotation;
7 | import java.lang.reflect.Type;
8 |
9 | import retrofit.Converter;
10 |
11 | /**
12 | * Created by JunyiZhou on 2016/3/3.
13 | */
14 | public class BitmapConverterFactory extends Converter.Factory {
15 | public static BitmapConverterFactory create() {
16 | return new BitmapConverterFactory();
17 | }
18 |
19 | @Override
20 | public Converter fromResponseBody(Type type, Annotation[] annotations) {
21 | return new BitmapResponseBodyConverter();
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/java/com/example/junyizhou/rxjavademo/api/factory/BitmapResponseBodyConverter.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.rxjavademo.api.factory;
2 |
3 | import android.graphics.Bitmap;
4 | import android.graphics.BitmapFactory;
5 |
6 | import com.squareup.okhttp.RequestBody;
7 | import com.squareup.okhttp.ResponseBody;
8 |
9 | import java.io.IOException;
10 | import java.lang.annotation.Annotation;
11 | import java.lang.reflect.Type;
12 |
13 | import retrofit.Converter;
14 |
15 | /**
16 | * Created by JunyiZhou on 2016/3/3.
17 | */
18 | public class BitmapResponseBodyConverter implements Converter {
19 |
20 | @Override
21 | public Bitmap convert(ResponseBody value) throws IOException {
22 | return BitmapFactory.decodeStream(value.byteStream());
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/java/com/example/junyizhou/rxjavademo/imageloader/CacheObservable.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.rxjavademo.imageloader;
2 |
3 | import com.example.junyizhou.rxjavademo.model.BitmapData;
4 |
5 | import rx.Observable;
6 |
7 | /**
8 | * Created by JunyiZhou on 2016/3/7.
9 | */
10 | public interface CacheObservable {
11 | Observable getObservable(String url);
12 | }
13 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/java/com/example/junyizhou/rxjavademo/imageloader/MemoryCache.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.rxjavademo.imageloader;
2 |
3 | import android.graphics.Bitmap;
4 | import android.util.LruCache;
5 |
6 | /**
7 | * Created by JunyiZhou on 2016/3/7.
8 | */
9 | public class MemoryCache extends LruCache{
10 | public MemoryCache(int maxSize) {
11 | super(maxSize);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/java/com/example/junyizhou/rxjavademo/imageloader/MemoryCacheOvservable.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.rxjavademo.imageloader;
2 |
3 | import com.example.junyizhou.rxjavademo.model.BitmapData;
4 |
5 | import rx.Observable;
6 | import rx.Subscriber;
7 | import rx.android.schedulers.AndroidSchedulers;
8 | import rx.schedulers.Schedulers;
9 |
10 | /**
11 | * Created by JunyiZhou on 2016/3/7.
12 | */
13 | public class MemoryCacheOvservable implements CacheObservable {
14 | public static final int DEFAULT_CACHE_SIZE = (24 /* MiB */ * 1024 * 1024);
15 | MemoryCache mCache = new MemoryCache<>(DEFAULT_CACHE_SIZE);
16 |
17 | @Override
18 | public Observable getObservable(final String url) {
19 | return Observable.create(new Observable.OnSubscribe() {
20 | @Override
21 | public void call(Subscriber super BitmapData> subscriber) {
22 | if (!subscriber.isUnsubscribed()) {
23 | subscriber.onNext(new BitmapData(mCache.get(url), url));
24 | subscriber.onCompleted();
25 | }
26 | }
27 | }).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread());
28 | }
29 |
30 | public void putData(BitmapData data) {
31 | mCache.put(data.url, data.bitmap);
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/java/com/example/junyizhou/rxjavademo/model/BitmapData.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.rxjavademo.model;
2 |
3 | import android.graphics.Bitmap;
4 | import android.graphics.BitmapFactory;
5 |
6 | import java.io.File;
7 | import java.io.FileInputStream;
8 | import java.io.FileNotFoundException;
9 |
10 | /**
11 | * Created by JunyiZhou on 2016/3/7.
12 | */
13 | public class BitmapData {
14 | public Bitmap bitmap;
15 | public String url;
16 | private boolean isAvailable;
17 |
18 | public BitmapData(Bitmap bitmap, String url) {
19 | this.bitmap = bitmap;
20 | this.url = url;
21 | }
22 |
23 | public BitmapData(File f, String url) {
24 | if (f != null && f.exists()) {
25 | this.url = url;
26 | try {
27 | bitmap = BitmapFactory.decodeStream(new FileInputStream(f));
28 | } catch (FileNotFoundException e) {
29 | e.printStackTrace();
30 | }
31 | }
32 | }
33 |
34 | public boolean isAvailable() {
35 | isAvailable = url != null && bitmap != null;
36 | return isAvailable;
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/java/com/example/junyizhou/rxjavademo/model/User.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.rxjavademo.model;
2 |
3 | public class User {
4 | private String name;
5 | private int age;
6 |
7 | public String getName() {
8 | return name;
9 | }
10 |
11 | public void setName(String name) {
12 | this.name = name;
13 | }
14 |
15 | public int getAge() {
16 | return age;
17 | }
18 |
19 | public void setAge(int age) {
20 | this.age = age;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/drawable-xhdpi/android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RxJavaDemo/app/src/main/res/drawable-xhdpi/android.png
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/drawable-xhdpi/icon_weather_location.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RxJavaDemo/app/src/main/res/drawable-xhdpi/icon_weather_location.png
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/drawable-xhdpi/icon_weather_wind_level.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RxJavaDemo/app/src/main/res/drawable-xhdpi/icon_weather_wind_level.png
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/drawable/air_quality_great_weather_banner.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/drawable/circle_weather_banner.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
8 |
11 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/layout-land/content_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
14 |
15 |
21 |
22 |
23 |
24 |
25 |
26 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/layout/content_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/layout/content_test.xml:
--------------------------------------------------------------------------------
1 |
2 |
11 |
12 |
16 |
17 |
21 |
22 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/menu/menu_main.xml:
--------------------------------------------------------------------------------
1 |
5 |
10 |
11 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RxJavaDemo/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RxJavaDemo/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RxJavaDemo/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RxJavaDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RxJavaDemo/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/values-v21/styles.xml:
--------------------------------------------------------------------------------
1 | >
2 |
3 |
9 |
10 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 64dp
6 |
7 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #3F51B5
4 | #303F9F
5 | #FF4081
6 |
7 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 16dp
4 | 16dp
5 | 16dp
6 |
7 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | RxJavaDemo
3 | Settings
4 |
5 |
6 | %1$s°/%2$s°
7 | %1$s级
8 | 优
9 | 良
10 | 轻度
11 | 中度
12 | 重度
13 | TestActivity
14 |
15 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
11 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/RxJavaDemo/app/src/test/java/com/example/junyizhou/rxjavademo/ExampleUnitTest.java:
--------------------------------------------------------------------------------
1 | package com.example.junyizhou.rxjavademo;
2 |
3 | import org.junit.Test;
4 |
5 | import static org.junit.Assert.*;
6 |
7 | /**
8 | * To work on unit tests, switch the Test Artifact in the Build Variants view.
9 | */
10 | public class ExampleUnitTest {
11 | @Test
12 | public void addition_isCorrect() throws Exception {
13 | assertEquals(4, 2 + 2);
14 | }
15 | }
--------------------------------------------------------------------------------
/RxJavaDemo/build.gradle:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 |
3 | buildscript {
4 | repositories {
5 | jcenter()
6 | }
7 | dependencies {
8 | classpath 'com.android.tools.build:gradle:1.2.3'
9 | classpath 'com.android.databinding:dataBinder:1.0-rc0'
10 | // NOTE: Do not place your application dependencies here; they belong
11 | // in the individual module build.gradle files
12 | }
13 | }
14 |
15 | allprojects {
16 | repositories {
17 | jcenter()
18 | }
19 | }
20 |
21 | task clean(type: Delete) {
22 | delete rootProject.buildDir
23 | }
24 |
--------------------------------------------------------------------------------
/RxJavaDemo/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m
13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
14 |
15 | # When configured, Gradle will run in incubating parallel mode.
16 | # This option should only be used with decoupled projects. More details, visit
17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
18 | # org.gradle.parallel=true
--------------------------------------------------------------------------------
/RxJavaDemo/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JunyiZhou/AndroidExercises/aed0fdc6855326d471e9d235538381e219db0b0b/RxJavaDemo/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/RxJavaDemo/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Oct 21 11:34:03 PDT 2015
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.8-all.zip
7 |
--------------------------------------------------------------------------------
/RxJavaDemo/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/RxJavaDemo/未命名绘图.drawio:
--------------------------------------------------------------------------------
1 | UzV2zq1wL0osyPDNT0nNUTV2VTV2LsrPL4GwciucU3NyVI0MMlNUjV1UjYwMgFjVyA2HrCFY1qAgsSg1rwSLBiADYTaQg2Y1AA==
--------------------------------------------------------------------------------