├── app ├── .gitignore ├── src │ ├── main │ │ ├── res │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ ├── ic_launcher_round.png │ │ │ │ ├── icon_notify_done.png │ │ │ │ ├── icon_notify_error.png │ │ │ │ └── icon_notify_info.png │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ ├── ic_launcher_round.png │ │ │ │ ├── icon_notify_done.png │ │ │ │ ├── icon_notify_error.png │ │ │ │ └── icon_notify_info.png │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── values │ │ │ │ ├── colors.xml │ │ │ │ ├── strings.xml │ │ │ │ ├── attrs.xml │ │ │ │ └── styles.xml │ │ │ ├── anim │ │ │ │ ├── left_in.xml │ │ │ │ ├── left_out.xml │ │ │ │ ├── right_in.xml │ │ │ │ └── right_out.xml │ │ │ ├── drawable │ │ │ │ └── tip_dialog_bg.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ ├── ic_launcher.xml │ │ │ │ └── ic_launcher_round.xml │ │ │ ├── layout │ │ │ │ ├── tip_dialog_layout.xml │ │ │ │ ├── activity_pic.xml │ │ │ │ └── activity_main.xml │ │ │ └── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ ├── java │ │ │ └── me │ │ │ │ └── businesscomponent │ │ │ │ ├── http │ │ │ │ ├── Api.java │ │ │ │ ├── UserService.java │ │ │ │ └── GankService.java │ │ │ │ ├── ConstantsPermission.java │ │ │ │ ├── entity │ │ │ │ ├── GankBaseResponse.java │ │ │ │ └── User.java │ │ │ │ ├── utils │ │ │ │ ├── RxLifecycleUtils.java │ │ │ │ ├── ScreenUtils.java │ │ │ │ └── PopUtils.java │ │ │ │ ├── activity │ │ │ │ ├── BasePresenterOrViewModel.java │ │ │ │ └── HttpExampleActivity.java │ │ │ │ ├── cache │ │ │ │ └── CacheProviders.java │ │ │ │ └── MainActivity.java │ │ └── AndroidManifest.xml │ ├── test │ │ └── java │ │ │ └── com │ │ │ └── taojiji │ │ │ └── view │ │ │ └── photoview │ │ │ └── ExampleUnitTest.java │ └── androidTest │ │ └── java │ │ └── com │ │ └── taojiji │ │ └── view │ │ └── photoview │ │ └── ExampleInstrumentedTest.java ├── proguard-rules.pro └── build.gradle ├── business_module_http ├── .gitignore ├── src │ └── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ ├── dagger │ │ │ ├── internal │ │ │ │ ├── Factory.java │ │ │ │ ├── Beta.java │ │ │ │ ├── Preconditions.java │ │ │ │ └── InstanceFactory.java │ │ │ ├── MembersInjector.java │ │ │ ├── Module.java │ │ │ └── Provides.java │ │ └── com │ │ │ └── from │ │ │ └── business │ │ │ └── http │ │ │ ├── lifecycle │ │ │ ├── LifecycleEndedException.java │ │ │ ├── LifecycleNotStartedException.java │ │ │ ├── CorrespondingEventsFunction.java │ │ │ ├── LifecycleEventsObservable_ArchLifecycleObserver_LifecycleAdapter.java │ │ │ └── LifecycleScopeProvider.java │ │ │ ├── BaseUrl.java │ │ │ ├── module │ │ │ ├── ClientModuleProvideRetrofitBuilderFactory.java │ │ │ ├── ClientModuleProvideClientBuilderFactory.java │ │ │ ├── http │ │ │ │ ├── HttpConfigModuleBaseUrlFactory.java │ │ │ │ ├── HttpConfigModuleInterceptorsFactory.java │ │ │ │ ├── HttpConfigModuleGlobalHttpHandlerFactory.java │ │ │ │ ├── HttpConfigModuleFormatPrinterFactory.java │ │ │ │ ├── HttpConfigModuleExecutorServiceFactory.java │ │ │ │ ├── HttpConfigModuleOkhttpConfigurationFactory.java │ │ │ │ ├── HttpConfigModuleGsonConfigurationFactory.java │ │ │ │ ├── HttpConfigModuleRxCacheConfigurationFactory.java │ │ │ │ ├── HttpConfigModulePrintHttpLogLevelFactory.java │ │ │ │ ├── HttpConfigModuleRetrofitConfigurationFactory.java │ │ │ │ ├── HttpConfigModuleResponseErrorListenerFactory.java │ │ │ │ ├── HttpConfigModuleCacheFileFactory.java │ │ │ │ └── HttpConfigModuleCacheFactoryFactory.java │ │ │ ├── ClientModuleProvideRxCacheDirectoryFactory.java │ │ │ ├── AppModuleProvideExtrasFactory.java │ │ │ ├── AppModule.java │ │ │ ├── AppModuleProvideGsonFactory.java │ │ │ └── ClientModuleProRxErrorHandlerFactory.java │ │ │ ├── integration │ │ │ └── IRepositoryManager.java │ │ │ ├── retrofiturlmanager │ │ │ ├── InvalidUrlException.java │ │ │ ├── Utils.java │ │ │ ├── parser │ │ │ │ └── UrlParser.java │ │ │ ├── onUrlChangeListener.java │ │ │ └── cache │ │ │ │ └── Cache.java │ │ │ ├── utils │ │ │ ├── UrlEncoderUtils.java │ │ │ └── LogUtils.java │ │ │ ├── HttpHandler.java │ │ │ ├── log │ │ │ ├── RequestInterceptorMembersInjector.java │ │ │ ├── RequestInterceptorFactory.java │ │ │ └── FormatPrinter.java │ │ │ └── component │ │ │ └── HttpComponent.java │ │ └── res │ │ └── values │ │ └── strings.xml ├── proguard-rules.pro ├── build.gradle └── README.md ├── view_module_photoview ├── .gitignore ├── build.gradle ├── src │ └── main │ │ ├── AndroidManifest.xml │ │ └── java │ │ └── com │ │ └── from │ │ └── view │ │ └── photoview │ │ ├── OnOutsidePhotoTapListener.java │ │ ├── OnViewDragListener.java │ │ ├── OnScaleChangedListener.java │ │ ├── OnMatrixChangedListener.java │ │ ├── OnViewTapListener.java │ │ ├── OnSingleFlingListener.java │ │ ├── OnPhotoTapListener.java │ │ ├── OnGestureListener.java │ │ ├── Compat.java │ │ └── Util.java ├── README.md └── proguard-rules.pro ├── view_module_picture ├── .gitignore ├── src │ └── main │ │ ├── res │ │ ├── drawable-hdpi │ │ │ ├── maven_picture_ic_back.png │ │ │ ├── maven_picture_ic_album.png │ │ │ ├── maven_picture_bg_btn_dis.9.png │ │ │ ├── maven_picture_bg_btn_nor.9.png │ │ │ ├── maven_picture_bg_btn_pre.9.png │ │ │ └── maven_picture_ic_take_photo.png │ │ ├── drawable-mdpi │ │ │ ├── maven_picture_ic_back.png │ │ │ ├── maven_picture_ic_album.png │ │ │ └── maven_picture_ic_take_photo.png │ │ ├── drawable-xhdpi │ │ │ ├── maven_picture_ic_album.png │ │ │ ├── maven_picture_ic_back.png │ │ │ └── maven_picture_ic_take_photo.png │ │ ├── drawable-xxhdpi │ │ │ ├── maven_picture_ic_back.png │ │ │ ├── maven_picture_ic_album.png │ │ │ ├── maven_picture_checkbox_normal.png │ │ │ ├── maven_picture_ic_take_photo.png │ │ │ ├── maven_picture_list_selected.png │ │ │ ├── maven_picture_list_unselected.png │ │ │ ├── maven_picture_checkbox_checked.png │ │ │ └── maven_picture_ic_default_image.png │ │ ├── drawable-xxxhdpi │ │ │ ├── maven_picture_ic_album.png │ │ │ ├── maven_picture_ic_back.png │ │ │ └── maven_picture_ic_take_photo.png │ │ ├── xml │ │ │ └── maven_picture_external_path.xml │ │ ├── values │ │ │ ├── dimens.xml │ │ │ ├── styles.xml │ │ │ ├── colors.xml │ │ │ └── strings.xml │ │ ├── color │ │ │ └── maven_picture_preview_color_selector.xml │ │ ├── drawable │ │ │ ├── maven_picture_selector_item_checked.xml │ │ │ ├── maven_picture_selector_top_ok.xml │ │ │ └── maven_picture_folder_bg.xml │ │ └── layout │ │ │ ├── maven_picture_item_camera_list.xml │ │ │ ├── maven_picture_item_images_list.xml │ │ │ ├── maven_picture_select_image_bottom_layout.xml │ │ │ ├── maven_picture_select_image_title.xml │ │ │ └── maven_picture_activity_preview_image.xml │ │ ├── java │ │ └── com │ │ │ └── from │ │ │ └── view │ │ │ └── picture │ │ │ ├── PhotoProvider.java │ │ │ ├── bean │ │ │ ├── ImageFolder.java │ │ │ └── ImageItem.java │ │ │ ├── weight │ │ │ ├── SuperCheckBox.java │ │ │ ├── FixViewPager.java │ │ │ └── SquareFrameLayout.java │ │ │ ├── imageloader │ │ │ ├── UIImageLoader.java │ │ │ └── GlideImageLoader.java │ │ │ ├── PictureSelector.java │ │ │ └── data │ │ │ └── DateFormatUtil.java │ │ └── AndroidManifest.xml ├── build.gradle ├── proguard-rules.pro └── README.md ├── view_module_refresh ├── .gitignore ├── src │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── from │ │ │ │ └── view │ │ │ │ └── refresh │ │ │ │ ├── api │ │ │ │ ├── RefreshHeader.java │ │ │ │ ├── DefaultRefreshInitializer.java │ │ │ │ ├── DefaultRefreshFooterCreator.java │ │ │ │ ├── DefaultRefreshHeaderCreator.java │ │ │ │ ├── ScrollBoundaryDecider.java │ │ │ │ ├── RefreshFooter.java │ │ │ │ └── RefreshContent.java │ │ │ │ ├── listener │ │ │ │ ├── CoordinatorLayoutListener.java │ │ │ │ ├── OnRefreshLoadMoreListener.java │ │ │ │ ├── OnRefreshListener.java │ │ │ │ ├── OnLoadMoreListener.java │ │ │ │ └── OnStateChangedListener.java │ │ │ │ ├── constant │ │ │ │ ├── SpinnerStyle.java │ │ │ │ ├── DimensionStatus.java │ │ │ │ └── RefreshState.java │ │ │ │ ├── util │ │ │ │ ├── DelayedRunnable.java │ │ │ │ ├── DensityUtil.java │ │ │ │ ├── ViscousFluidInterpolator.java │ │ │ │ └── DesignUtil.java │ │ │ │ ├── internal │ │ │ │ ├── PaintDrawable.java │ │ │ │ └── ArrowDrawable.java │ │ │ │ └── impl │ │ │ │ └── ScrollBoundaryDeciderAdapter.java │ │ └── res │ │ │ └── values │ │ │ └── strings.xml │ ├── test │ │ └── java │ │ │ └── com │ │ │ └── taojiji │ │ │ └── view │ │ │ └── refresh │ │ │ └── ExampleUnitTest.java │ └── androidTest │ │ └── java │ │ └── com │ │ └── taojiji │ │ └── view │ │ └── refresh │ │ └── ExampleInstrumentedTest.java ├── build.gradle ├── README.md └── proguard-rules.pro ├── view_module_swipeback ├── .gitignore ├── build.gradle ├── src │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── res │ │ │ ├── values │ │ │ │ └── strings.xml │ │ │ ├── drawable │ │ │ │ └── maven_swipeback_shadow.9.png │ │ │ └── anim │ │ │ │ ├── maven_swipeback_translucent_exit.xml │ │ │ │ └── maven_swipeback_translucent_enter.xml │ │ └── java │ │ │ └── com │ │ │ └── from │ │ │ └── view │ │ │ └── swipeback │ │ │ ├── ISwipeBack.java │ │ │ └── SimpleSwipeBackDelegate.java │ ├── test │ │ └── java │ │ │ └── com │ │ │ └── taojiji │ │ │ └── view │ │ │ └── swipeback │ │ │ └── ExampleUnitTest.java │ └── androidTest │ │ └── java │ │ └── com │ │ └── taojiji │ │ └── view │ │ └── swipeback │ │ └── ExampleInstrumentedTest.java ├── ezgif.com-video-to-gif.gif ├── proguard-rules.pro └── README.md ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── qrcode_for_gh_e708d5b47c85_258.jpg ├── .gitignore ├── .gitee └── ISSUE_TEMPLATE.zh-CN.md ├── settings.gradle ├── .idea ├── vcs.xml ├── runConfigurations.xml ├── checkstyle-idea.xml ├── gradle.xml ├── codeStyles │ └── Project.xml └── misc.xml ├── gradle.properties ├── common_component_build.gradle ├── README.md └── gradlew.bat /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /business_module_http/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /view_module_photoview/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /view_module_picture/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /view_module_refresh/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /view_module_swipeback/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /view_module_swipeback/build.gradle: -------------------------------------------------------------------------------- 1 | apply from:"../common_component_build.gradle" -------------------------------------------------------------------------------- /view_module_photoview/build.gradle: -------------------------------------------------------------------------------- 1 | apply from:"../common_component_build.gradle" 2 | 3 | -------------------------------------------------------------------------------- /view_module_refresh/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /business_module_http/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /view_module_photoview/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /view_module_swipeback/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /qrcode_for_gh_e708d5b47c85_258.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/qrcode_for_gh_e708d5b47c85_258.jpg -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea 5 | .DS_Store 6 | /build 7 | /captures 8 | .externalNativeBuild 9 | -------------------------------------------------------------------------------- /.gitee/ISSUE_TEMPLATE.zh-CN.md: -------------------------------------------------------------------------------- 1 | ### 该问题是怎么引起的? 2 | 3 | 4 | 5 | ### 重现步骤 6 | 7 | 8 | 9 | ### 报错信息 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /view_module_swipeback/ezgif.com-video-to-gif.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_swipeback/ezgif.com-video-to-gif.gif -------------------------------------------------------------------------------- /view_module_swipeback/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 200 3 | 4 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/icon_notify_done.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-xhdpi/icon_notify_done.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/icon_notify_error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-xhdpi/icon_notify_error.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/icon_notify_info.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-xhdpi/icon_notify_info.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/icon_notify_done.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-xxhdpi/icon_notify_done.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/icon_notify_error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-xxhdpi/icon_notify_error.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/icon_notify_info.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-xxhdpi/icon_notify_info.png -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app', ':view_module_photoview', ':view_module_picture', ':view_module_swipeback', ':view_module_refresh', ':business_module_http' 2 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /business_module_http/src/main/java/dagger/internal/Factory.java: -------------------------------------------------------------------------------- 1 | package dagger.internal; 2 | 3 | 4 | import javax.inject.Provider; 5 | 6 | public interface Factory extends Provider { 7 | } -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-hdpi/maven_picture_ic_back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-hdpi/maven_picture_ic_back.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-mdpi/maven_picture_ic_back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-mdpi/maven_picture_ic_back.png -------------------------------------------------------------------------------- /view_module_swipeback/src/main/res/drawable/maven_swipeback_shadow.9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_swipeback/src/main/res/drawable/maven_swipeback_shadow.9.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-hdpi/maven_picture_ic_album.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-hdpi/maven_picture_ic_album.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-mdpi/maven_picture_ic_album.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-mdpi/maven_picture_ic_album.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-xhdpi/maven_picture_ic_album.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-xhdpi/maven_picture_ic_album.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-xhdpi/maven_picture_ic_back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-xhdpi/maven_picture_ic_back.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_ic_back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_ic_back.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-hdpi/maven_picture_bg_btn_dis.9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-hdpi/maven_picture_bg_btn_dis.9.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-hdpi/maven_picture_bg_btn_nor.9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-hdpi/maven_picture_bg_btn_nor.9.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-hdpi/maven_picture_bg_btn_pre.9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-hdpi/maven_picture_bg_btn_pre.9.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_ic_album.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_ic_album.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-xxxhdpi/maven_picture_ic_album.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-xxxhdpi/maven_picture_ic_album.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-xxxhdpi/maven_picture_ic_back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-xxxhdpi/maven_picture_ic_back.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-hdpi/maven_picture_ic_take_photo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-hdpi/maven_picture_ic_take_photo.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-mdpi/maven_picture_ic_take_photo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-mdpi/maven_picture_ic_take_photo.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-xhdpi/maven_picture_ic_take_photo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-xhdpi/maven_picture_ic_take_photo.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_checkbox_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_checkbox_normal.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_ic_take_photo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_ic_take_photo.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_list_selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_list_selected.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_list_unselected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_list_unselected.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-xxxhdpi/maven_picture_ic_take_photo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-xxxhdpi/maven_picture_ic_take_photo.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_checkbox_checked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_checkbox_checked.png -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_ic_default_image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XWC95/BusinessComponent/HEAD/view_module_picture/src/main/res/drawable-xxhdpi/maven_picture_ic_default_image.png -------------------------------------------------------------------------------- /view_module_photoview/README.md: -------------------------------------------------------------------------------- 1 | # view_module_photoview 2 | 3 | #### 使用 4 | 引入 Module 或 gradle 5 | ``` 6 | implementation 'com.from.view.photoview:view_module_photoview:1.0.0' 7 | ``` 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /app/src/main/java/me/businesscomponent/http/Api.java: -------------------------------------------------------------------------------- 1 | package me.businesscomponent.http; 2 | 3 | /** 4 | * @author Vea 5 | * @since 2019-01-14 6 | */ 7 | public interface Api { 8 | String APP_DOMAIN = "https://api.github.com"; 9 | } 10 | -------------------------------------------------------------------------------- /view_module_refresh/build.gradle: -------------------------------------------------------------------------------- 1 | apply from:"../common_component_build.gradle" 2 | 3 | dependencies { 4 | compileOnly "com.android.support:recyclerview-v7:$support_version" 5 | compileOnly "com.android.support:design:$support_version" 6 | } 7 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #008577 4 | #00574B 5 | #D81B60 6 | 7 | -------------------------------------------------------------------------------- /view_module_picture/src/main/res/xml/maven_picture_external_path.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | -------------------------------------------------------------------------------- /view_module_refresh/src/main/java/com/from/view/refresh/api/RefreshHeader.java: -------------------------------------------------------------------------------- 1 | package com.from.view.refresh.api; 2 | 3 | /** 4 | * 刷新头部 5 | * Created by SCWANG on 2017/5/26. 6 | */ 7 | public interface RefreshHeader extends RefreshInternal { 8 | 9 | } 10 | -------------------------------------------------------------------------------- /app/src/main/res/anim/left_in.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/anim/left_out.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/anim/right_in.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/anim/right_out.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /view_module_refresh/src/main/java/com/from/view/refresh/listener/CoordinatorLayoutListener.java: -------------------------------------------------------------------------------- 1 | package com.from.view.refresh.listener; 2 | 3 | public interface CoordinatorLayoutListener { 4 | void onCoordinatorUpdate(boolean enableRefresh, boolean enableLoadMore); 5 | } -------------------------------------------------------------------------------- /app/src/main/res/drawable/tip_dialog_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /view_module_refresh/src/main/java/com/from/view/refresh/listener/OnRefreshLoadMoreListener.java: -------------------------------------------------------------------------------- 1 | package com.from.view.refresh.listener; 2 | 3 | /** 4 | * 刷新加载组合监听器 5 | * Created by SCWANG on 2017/5/26. 6 | */ 7 | public interface OnRefreshLoadMoreListener extends OnRefreshListener, OnLoadMoreListener { 8 | } 9 | -------------------------------------------------------------------------------- /app/src/main/java/me/businesscomponent/ConstantsPermission.java: -------------------------------------------------------------------------------- 1 | package me.businesscomponent; 2 | 3 | /** 4 | * @author Vea 5 | * @version 1.0.0 6 | * @since 2019-04-26 7 | */ 8 | public class ConstantsPermission { 9 | /** 10 | * 相机 11 | */ 12 | public static final int CAMERA = 100; 13 | } 14 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /view_module_refresh/README.md: -------------------------------------------------------------------------------- 1 | # view_module_refresh 2 | 3 | ### 介绍 4 | [感谢 SmartRefreshLayout 作者: scwang90](https://github.com/scwang90/SmartRefreshLayout) 5 | 6 | #### 使用 7 | 引入 Module 或 gradle 8 | ``` 9 | 10 | implementation 'com.from.view.refresh:view_module_refresh:1.0.0' 11 | ``` 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /view_module_picture/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 50dp 4 | 50dp 5 | 3dp 6 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /view_module_picture/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | -------------------------------------------------------------------------------- /view_module_swipeback/src/main/java/com/from/view/swipeback/ISwipeBack.java: -------------------------------------------------------------------------------- 1 | package com.from.view.swipeback; 2 | 3 | /** 4 | * @author Vea 5 | * @version 1.0.2 6 | * @since 2019-01 7 | */ 8 | public interface ISwipeBack { 9 | /** 10 | * 返回 true 可以侧滑 11 | * 12 | * @return 返回 true 可以侧滑 13 | */ 14 | boolean isEnableGesture(); 15 | } 16 | -------------------------------------------------------------------------------- /view_module_picture/build.gradle: -------------------------------------------------------------------------------- 1 | apply from:"../common_component_build.gradle" 2 | 3 | android { 4 | resourcePrefix "maven_picture_" 5 | } 6 | 7 | dependencies { 8 | compileOnly "com.android.support:recyclerview-v7:$support_version" 9 | compileOnly "com.github.bumptech.glide:glide:$glide_version" 10 | compileOnly project(':view_module_photoview') 11 | } 12 | -------------------------------------------------------------------------------- /view_module_picture/src/main/java/com/from/view/picture/PhotoProvider.java: -------------------------------------------------------------------------------- 1 | package com.from.view.picture; 2 | 3 | import android.support.v4.content.FileProvider; 4 | 5 | /** 6 | * 7 | * 7.0 file provider 8 | * 9 | * @version 1.0.0 10 | * @since 2019-01-03 11 | */ 12 | public class PhotoProvider extends FileProvider { 13 | public PhotoProvider(){ 14 | 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /view_module_picture/src/main/res/color/maven_picture_preview_color_selector.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /app/src/main/res/layout/tip_dialog_layout.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 10 | -------------------------------------------------------------------------------- /view_module_refresh/src/main/java/com/from/view/refresh/listener/OnRefreshListener.java: -------------------------------------------------------------------------------- 1 | package com.from.view.refresh.listener; 2 | 3 | import android.support.annotation.NonNull; 4 | 5 | import com.from.view.refresh.api.RefreshLayout; 6 | 7 | /** 8 | * 刷新监听器 9 | * Created by SCWANG on 2017/5/26. 10 | */ 11 | 12 | public interface OnRefreshListener { 13 | void onRefresh(@NonNull RefreshLayout refreshLayout); 14 | } 15 | -------------------------------------------------------------------------------- /view_module_refresh/src/main/java/com/from/view/refresh/listener/OnLoadMoreListener.java: -------------------------------------------------------------------------------- 1 | package com.from.view.refresh.listener; 2 | 3 | import android.support.annotation.NonNull; 4 | 5 | import com.from.view.refresh.api.RefreshLayout; 6 | 7 | /** 8 | * 加载更多监听器 9 | * Created by SCWANG on 2017/5/26. 10 | */ 11 | 12 | public interface OnLoadMoreListener { 13 | void onLoadMore(@NonNull RefreshLayout refreshLayout); 14 | } 15 | -------------------------------------------------------------------------------- /view_module_photoview/src/main/java/com/from/view/photoview/OnOutsidePhotoTapListener.java: -------------------------------------------------------------------------------- 1 | package com.from.view.photoview; 2 | 3 | import android.widget.ImageView; 4 | 5 | /** 6 | * Callback when the user tapped outside of the photo 7 | */ 8 | public interface OnOutsidePhotoTapListener { 9 | 10 | /** 11 | * The outside of the photo has been tapped 12 | */ 13 | void onOutsidePhotoTap(ImageView imageView); 14 | } 15 | -------------------------------------------------------------------------------- /view_module_picture/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #22292c 4 | #80CCCCCC 5 | #000000 6 | #9e111212 7 | #c4111212 8 | -------------------------------------------------------------------------------- /view_module_refresh/src/main/java/com/from/view/refresh/api/DefaultRefreshInitializer.java: -------------------------------------------------------------------------------- 1 | package com.from.view.refresh.api; 2 | 3 | import android.content.Context; 4 | import android.support.annotation.NonNull; 5 | 6 | /** 7 | * 默认全局初始化器 8 | * Created by Administrator on 2018/5/29 0029. 9 | */ 10 | public interface DefaultRefreshInitializer { 11 | void initialize(@NonNull Context context, @NonNull RefreshLayout layout); 12 | } 13 | -------------------------------------------------------------------------------- /view_module_refresh/src/main/java/com/from/view/refresh/api/DefaultRefreshFooterCreator.java: -------------------------------------------------------------------------------- 1 | package com.from.view.refresh.api; 2 | 3 | import android.content.Context; 4 | import android.support.annotation.NonNull; 5 | 6 | /** 7 | * 默认Footer创建器 8 | * Created by SCWANG on 2018/1/26. 9 | */ 10 | public interface DefaultRefreshFooterCreator { 11 | @NonNull 12 | RefreshFooter createRefreshFooter(@NonNull Context context, @NonNull RefreshLayout layout); 13 | } 14 | -------------------------------------------------------------------------------- /view_module_refresh/src/main/java/com/from/view/refresh/api/DefaultRefreshHeaderCreator.java: -------------------------------------------------------------------------------- 1 | package com.from.view.refresh.api; 2 | 3 | import android.content.Context; 4 | import android.support.annotation.NonNull; 5 | 6 | /** 7 | * 默认Header创建器 8 | * Created by SCWANG on 2018/1/26. 9 | */ 10 | public interface DefaultRefreshHeaderCreator { 11 | @NonNull 12 | RefreshHeader createRefreshHeader(@NonNull Context context, @NonNull RefreshLayout layout); 13 | } 14 | -------------------------------------------------------------------------------- /view_module_picture/src/main/res/drawable/maven_picture_selector_item_checked.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_pic.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 |