Jelajahi Sumber

Refactor Loading Dialog

zhpanvip 4 tahun lalu
induk
melakukan
4c47242cc6
100 mengubah file dengan 462 tambahan dan 590 penghapusan
  1. 12 12
      app/build.gradle
  2. 2 2
      app/proguard-rules.pro
  3. 5 5
      app/src/main/AndroidManifest.xml
  4. 1 1
      app/src/main/java/com/example/zhpan/banner/App.java
  5. 2 2
      app/src/main/java/com/example/zhpan/banner/activity/BaseCompatActivity.java
  6. 1 1
      app/src/main/java/com/example/zhpan/banner/activity/BaseDataActivity.kt
  7. 3 3
      app/src/main/java/com/example/zhpan/banner/activity/MainActivity.kt
  8. 2 2
      app/src/main/java/com/example/zhpan/banner/activity/WebViewActivity.java
  9. 7 7
      app/src/main/java/com/example/zhpan/banner/activity/WelcomeActivity.kt
  10. 6 6
      app/src/main/java/com/example/zhpan/banner/adapter/AdapterFragmentPager.kt
  11. 4 4
      app/src/main/java/com/example/zhpan/banner/adapter/ArticleAdapter.kt
  12. 6 6
      app/src/main/java/com/example/zhpan/banner/adapter/HomeAdapter.java
  13. 3 3
      app/src/main/java/com/example/zhpan/banner/adapter/ImageResourceAdapter.java
  14. 4 6
      app/src/main/java/com/example/zhpan/banner/adapter/WelcomeAdapter.kt
  15. 1 1
      app/src/main/java/com/example/zhpan/banner/bean/ArticleWrapper.kt
  16. 1 1
      app/src/main/java/com/example/zhpan/banner/bean/CustomBean.kt
  17. 2 2
      app/src/main/java/com/example/zhpan/banner/bean/DataWrapper.kt
  18. 1 1
      app/src/main/java/com/example/zhpan/banner/fragment/BaseFragment.kt
  19. 15 15
      app/src/main/java/com/example/zhpan/banner/fragment/HomeFragment.java
  20. 3 3
      app/src/main/java/com/example/zhpan/banner/fragment/IndicatorFragment.java
  21. 5 5
      app/src/main/java/com/example/zhpan/banner/fragment/OthersFragment.java
  22. 4 4
      app/src/main/java/com/example/zhpan/banner/fragment/PageFragment.java
  23. 97 0
      app/src/main/java/com/example/zhpan/banner/loading/LoadingDialog.java
  24. 60 0
      app/src/main/java/com/example/zhpan/banner/loading/LoadingUtils.java
  25. 2 2
      app/src/main/java/com/example/zhpan/banner/net/ApiService.java
  26. 1 3
      app/src/main/java/com/example/zhpan/banner/net/BannerData.java
  27. 1 1
      app/src/main/java/com/example/zhpan/banner/net/Constants.java
  28. 2 2
      app/src/main/java/com/example/zhpan/banner/net/RetrofitGnerator.java
  29. 63 0
      app/src/main/java/com/example/zhpan/banner/net/RxUtil.java
  30. 1 1
      app/src/main/java/com/example/zhpan/banner/net/common/BasicResponse.java
  31. 1 1
      app/src/main/java/com/example/zhpan/banner/net/common/Constants.java
  32. 2 2
      app/src/main/java/com/example/zhpan/banner/net/common/ErrorCode.java
  33. 1 1
      app/src/main/java/com/example/zhpan/banner/net/common/IdeaApi.java
  34. 51 0
      app/src/main/java/com/example/zhpan/banner/net/common/LoadingTransformerCreator.java
  35. 4 4
      app/src/main/java/com/example/zhpan/banner/net/common/ResponseObserver.java
  36. 5 5
      app/src/main/java/com/example/zhpan/banner/net/common/RetrofitUtils.java
  37. 2 2
      app/src/main/java/com/example/zhpan/banner/net/converter/GsonConverterFactory.java
  38. 1 1
      app/src/main/java/com/example/zhpan/banner/net/converter/GsonRequestBodyConverter.java
  39. 8 8
      app/src/main/java/com/example/zhpan/banner/net/converter/GsonResponseBodyConverter.java
  40. 1 1
      app/src/main/java/com/example/zhpan/banner/net/exception/NoDataExceptionException.java
  41. 2 2
      app/src/main/java/com/example/zhpan/banner/net/exception/RemoteLoginExpiredException.java
  42. 2 2
      app/src/main/java/com/example/zhpan/banner/net/exception/ServerResponseException.java
  43. 2 2
      app/src/main/java/com/example/zhpan/banner/net/https/SafeHostnameVerifier.java
  44. 2 2
      app/src/main/java/com/example/zhpan/banner/net/https/SslContextFactory.java
  45. 1 1
      app/src/main/java/com/example/zhpan/banner/net/interceptor/HttpCacheInterceptor.java
  46. 1 1
      app/src/main/java/com/example/zhpan/banner/net/interceptor/HttpHeaderInterceptor.java
  47. 1 1
      app/src/main/java/com/example/zhpan/banner/net/interceptor/LoggingInterceptor.java
  48. 1 1
      app/src/main/java/com/example/zhpan/banner/recyclerview/listener/ICustomClickListener.java
  49. 1 1
      app/src/main/java/com/example/zhpan/banner/recyclerview/listener/ICustomScrollListener.java
  50. 1 1
      app/src/main/java/com/example/zhpan/banner/recyclerview/listener/IScrollListener.java
  51. 1 1
      app/src/main/java/com/example/zhpan/banner/recyclerview/module/ViewConfig.java
  52. 4 4
      app/src/main/java/com/example/zhpan/banner/recyclerview/ui/CustomAdapter.java
  53. 4 4
      app/src/main/java/com/example/zhpan/banner/recyclerview/ui/CustomRecyclerView.java
  54. 5 5
      app/src/main/java/com/example/zhpan/banner/recyclerview/ui/ScrollWrapRecycler.java
  55. 1 1
      app/src/main/java/com/example/zhpan/banner/transform/AccordionTransformer.java
  56. 1 1
      app/src/main/java/com/example/zhpan/banner/transform/BaseTransformer.java
  57. 1 1
      app/src/main/java/com/example/zhpan/banner/transform/DepthPageTransformer.java
  58. 6 6
      app/src/main/java/com/example/zhpan/banner/transform/PageTransformerFactory.java
  59. 1 1
      app/src/main/java/com/example/zhpan/banner/transform/RotateUpTransformer.java
  60. 1 1
      app/src/main/java/com/example/zhpan/banner/transform/StackTransformer.java
  61. 1 1
      app/src/main/java/com/example/zhpan/banner/transform/TransformerStyle.java
  62. 1 1
      app/src/main/java/com/example/zhpan/banner/view/CornerImageView.kt
  63. 1 1
      app/src/main/java/com/example/zhpan/banner/view/FigureIndicatorView.java
  64. 3 3
      app/src/main/java/com/example/zhpan/banner/viewholder/CustomPageViewHolder.java
  65. 3 3
      app/src/main/java/com/example/zhpan/banner/viewholder/ImageResourceViewHolder.java
  66. 4 6
      app/src/main/java/com/example/zhpan/banner/viewholder/NetViewHolder.java
  67. 3 5
      app/src/main/java/com/example/zhpan/banner/viewholder/NewTypeViewHolder.java
  68. 2 4
      app/src/main/java/com/example/zhpan/banner/viewholder/PhotoViewHolder.kt
  69. 0 77
      app/src/main/java/com/example/zhpan/circleviewpager/net/RxUtil.java
  70. 0 62
      app/src/main/java/com/example/zhpan/circleviewpager/net/common/ProgressUtils.java
  71. 0 108
      app/src/main/java/com/example/zhpan/circleviewpager/net/dialog/CustomProgressDialog.java
  72. 0 60
      app/src/main/java/com/example/zhpan/circleviewpager/net/dialog/DialogUtils.java
  73. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/advertise0.jpg
  74. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/advertise1.jpg
  75. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/advertise2.jpg
  76. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/advertise3.jpg
  77. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/advertise4.jpg
  78. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/heart_empty.png
  79. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/heart_red.png
  80. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/ic_banner.png
  81. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/ic_email.png
  82. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/ic_indicator.png
  83. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/ic_qq_group.png
  84. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/progress_1.png
  85. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/progress_2.png
  86. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/progress_3.png
  87. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/progress_4.png
  88. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/progress_5.png
  89. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/progress_6.png
  90. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/progress_7.png
  91. TEMPAT SAMPAH
      app/src/main/res/drawable-xxxhdpi/progress_8.png
  92. 0 13
      app/src/main/res/drawable/progress_round.xml
  93. 0 19
      app/src/main/res/layout/dialog_progress.xml
  94. 1 1
      app/src/main/res/layout/fragment_home.xml
  95. 3 7
      app/src/main/res/layout/item_home_banner.xml
  96. 0 31
      app/src/main/res/layout/item_net.xml
  97. 6 0
      app/src/main/res/layout/item_net_image.xml
  98. 1 1
      app/src/main/res/layout/item_page_indicator.xml
  99. 0 21
      app/src/main/res/layout/item_photo_view.xml
  100. 1 1
      app/src/main/res/layout/item_slide_mode.xml

+ 12 - 12
app/build.gradle

@@ -45,22 +45,20 @@ dependencies {
     androidTestImplementation('androidx.test.espresso:espresso-core:3.1.0', {
         exclude group: 'com.android.support', module: 'support-annotations'
     })
-    api "io.reactivex.rxjava2:rxjava:$rootProject.ext.rxjava2Version"
-    api "com.squareup.retrofit2:retrofit:$rootProject.ext.retrofit2Version"
-    api "com.squareup.retrofit2:converter-scalars:$rootProject.ext.retrofit2Version"
-    api "com.squareup.retrofit2:converter-gson:$rootProject.ext.retrofit2Version"
-    api "com.squareup.retrofit2:adapter-rxjava2:$rootProject.ext.retrofit2Version"
-    api "com.trello.rxlifecycle2:rxlifecycle:$rootProject.ext.rxlifecycle"
-    //compile "com.trello.rxlifecycle2:rxlifecycle-android:$rootProject.ext.rxlifecycle"
-    api "com.trello.rxlifecycle2:rxlifecycle-components:$rootProject.ext.rxlifecycle"
-    api 'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:1.0.0'
-    api 'io.reactivex.rxjava2:rxandroid:2.1.1'
-    api 'com.squareup.okhttp3:logging-interceptor:3.10.0'
+    implementation "io.reactivex.rxjava2:rxjava:$rootProject.ext.rxjava2Version"
+    implementation "com.squareup.retrofit2:retrofit:$rootProject.ext.retrofit2Version"
+    implementation "com.squareup.retrofit2:converter-scalars:$rootProject.ext.retrofit2Version"
+    implementation "com.squareup.retrofit2:converter-gson:$rootProject.ext.retrofit2Version"
+    implementation "com.squareup.retrofit2:adapter-rxjava2:$rootProject.ext.retrofit2Version"
+    implementation "com.trello.rxlifecycle2:rxlifecycle:$rootProject.ext.rxlifecycle"
+    implementation "com.trello.rxlifecycle2:rxlifecycle-components:$rootProject.ext.rxlifecycle"
+    implementation 'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:1.0.0'
+    implementation 'io.reactivex.rxjava2:rxandroid:2.1.1'
+    implementation 'com.squareup.okhttp3:logging-interceptor:4.8.1'
 
     implementation 'androidx.appcompat:appcompat:1.2.0'
     implementation 'androidx.recyclerview:recyclerview:1.1.0'
     implementation 'com.github.bumptech.glide:glide:4.11.0'
-    implementation 'com.github.chrisbanes:PhotoView:2.3.0'
     implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
     implementation 'com.scwang.smartrefresh:SmartRefreshHeader:1.1.0'
     debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.3'
@@ -74,5 +72,7 @@ dependencies {
     implementation 'com.tencent.bugly:crashreport:3.2.1'
     implementation 'com.google.android.material:material:1.2.1'
     implementation 'com.blankj:utilcodex:1.30.5'
+    implementation 'com.airbnb.android:lottie:3.4.1'
+//    implementation 'com.github.zhpanvip:BannerViewPager:3.2.0'
     implementation project(path: ':bannerview')
 }

+ 2 - 2
app/proguard-rules.pro

@@ -23,8 +23,8 @@
     public void onPause();
 }
 -keep public class * extends android.app.Activity
--keep class com.example.zhpan.circleviewpager.bean.** { *; }
--keep class com.example.zhpan.circleviewpager.net.** { *; }
+-keep class com.example.zhpan.banner.bean.** { *; }
+-keep class com.example.zhpan.banner.net.** { *; }
 -keep class com.zhpan.idea.** { *; }
 
 -keep class androidx.recyclerview.widget.**{*;}

+ 5 - 5
app/src/main/AndroidManifest.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-    package="com.example.zhpan.circleviewpager">
+    package="com.example.zhpan.banner">
 
     <uses-permission android:name="android.permission.INTERNET" />
     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
@@ -8,14 +8,14 @@
     <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
 
     <application
-        android:name=".App"
+        android:name="com.example.zhpan.banner.App"
         android:allowBackup="true"
         android:icon="@mipmap/ic_launcher"
         android:label="@string/app_name"
         android:supportsRtl="true"
         android:theme="@style/AppTheme">
         <activity
-            android:name=".activity.WelcomeActivity"
+            android:name="com.example.zhpan.banner.activity.WelcomeActivity"
             android:theme="@style/FullScreenTheme">
             <intent-filter>
                 <action android:name="android.intent.action.MAIN" />
@@ -24,8 +24,8 @@
                 <category android:name="android.intent.category.LAUNCHER" />
             </intent-filter>
         </activity>
-        <activity android:name=".activity.MainActivity" />
-        <activity android:name=".activity.WebViewActivity" />
+        <activity android:name="com.example.zhpan.banner.activity.MainActivity" />
+        <activity android:name="com.example.zhpan.banner.activity.WebViewActivity" />
     </application>
 
 </manifest>

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/App.java → app/src/main/java/com/example/zhpan/banner/App.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager;
+package com.example.zhpan.banner;
 
 import android.app.Application;
 

+ 2 - 2
app/src/main/java/com/example/zhpan/circleviewpager/activity/BaseCompatActivity.java → app/src/main/java/com/example/zhpan/banner/activity/BaseCompatActivity.java

@@ -1,11 +1,11 @@
-package com.example.zhpan.circleviewpager.activity;
+package com.example.zhpan.banner.activity;
 
 import androidx.annotation.NonNull;
 import androidx.appcompat.app.AppCompatActivity;
 
 import android.os.Bundle;
 
-import com.example.zhpan.circleviewpager.R;
+import com.example.zhpan.banner.R;
 import com.scwang.smartrefresh.header.MaterialHeader;
 import com.scwang.smartrefresh.layout.SmartRefreshLayout;
 import com.scwang.smartrefresh.layout.api.RefreshLayout;

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/activity/BaseDataActivity.kt → app/src/main/java/com/example/zhpan/banner/activity/BaseDataActivity.kt

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.activity
+package com.example.zhpan.banner.activity
 
 import androidx.appcompat.app.AppCompatActivity
 

+ 3 - 3
app/src/main/java/com/example/zhpan/circleviewpager/activity/MainActivity.kt → app/src/main/java/com/example/zhpan/banner/activity/MainActivity.kt

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.activity
+package com.example.zhpan.banner.activity
 
 import android.content.Context
 import android.content.Intent
@@ -6,8 +6,8 @@ import android.os.Bundle
 import androidx.appcompat.app.ActionBarDrawerToggle
 import androidx.appcompat.app.AppCompatActivity
 import androidx.viewpager2.widget.ViewPager2
-import com.example.zhpan.circleviewpager.R
-import com.example.zhpan.circleviewpager.adapter.AdapterFragmentPager
+import com.example.zhpan.banner.R
+import com.example.zhpan.banner.adapter.AdapterFragmentPager
 import com.google.android.material.navigation.NavigationView
 import kotlinx.android.synthetic.main.activity_main.*
 

+ 2 - 2
app/src/main/java/com/example/zhpan/circleviewpager/activity/WebViewActivity.java → app/src/main/java/com/example/zhpan/banner/activity/WebViewActivity.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.activity;
+package com.example.zhpan.banner.activity;
 
 import android.annotation.SuppressLint;
 import android.content.Context;
@@ -13,7 +13,7 @@ import android.webkit.WebViewClient;
 import androidx.annotation.NonNull;
 import androidx.appcompat.widget.Toolbar;
 
-import com.example.zhpan.circleviewpager.R;
+import com.example.zhpan.banner.R;
 import com.scwang.smartrefresh.header.MaterialHeader;
 import com.scwang.smartrefresh.layout.api.RefreshLayout;
 

+ 7 - 7
app/src/main/java/com/example/zhpan/circleviewpager/activity/WelcomeActivity.kt → app/src/main/java/com/example/zhpan/banner/activity/WelcomeActivity.kt

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.activity
+package com.example.zhpan.banner.activity
 
 import android.animation.AnimatorSet
 import android.animation.ObjectAnimator
@@ -8,13 +8,13 @@ import android.view.animation.DecelerateInterpolator
 import androidx.core.content.ContextCompat
 import androidx.viewpager2.widget.ViewPager2
 import com.blankj.utilcode.util.ToastUtils
-import com.example.zhpan.circleviewpager.R
-import com.example.zhpan.circleviewpager.adapter.WelcomeAdapter
-import com.example.zhpan.circleviewpager.bean.CustomBean
-import com.example.zhpan.circleviewpager.transform.PageTransformerFactory
-import com.example.zhpan.circleviewpager.viewholder.CustomPageViewHolder
+import com.example.zhpan.banner.R
+import com.example.zhpan.banner.adapter.WelcomeAdapter
+import com.example.zhpan.banner.bean.CustomBean
+import com.example.zhpan.banner.transform.PageTransformerFactory
+import com.example.zhpan.banner.viewholder.CustomPageViewHolder
 import com.zhpan.bannerview.BannerViewPager
-import com.example.zhpan.circleviewpager.transform.TransformerStyle
+import com.example.zhpan.banner.transform.TransformerStyle
 import com.zhpan.bannerview.utils.BannerUtils
 import com.zhpan.indicator.enums.IndicatorSlideMode
 import kotlinx.android.synthetic.main.activity_welcome.*

+ 6 - 6
app/src/main/java/com/example/zhpan/circleviewpager/adapter/AdapterFragmentPager.kt → app/src/main/java/com/example/zhpan/banner/adapter/AdapterFragmentPager.kt

@@ -1,15 +1,15 @@
-package com.example.zhpan.circleviewpager.adapter
+package com.example.zhpan.banner.adapter
 
 import android.util.SparseArray
 import androidx.fragment.app.Fragment
 import androidx.fragment.app.FragmentActivity
 import androidx.viewpager2.adapter.FragmentStateAdapter
 
-import com.example.zhpan.circleviewpager.fragment.BaseFragment
-import com.example.zhpan.circleviewpager.fragment.HomeFragment
-import com.example.zhpan.circleviewpager.fragment.IndicatorFragment
-import com.example.zhpan.circleviewpager.fragment.OthersFragment
-import com.example.zhpan.circleviewpager.fragment.PageFragment
+import com.example.zhpan.banner.fragment.BaseFragment
+import com.example.zhpan.banner.fragment.HomeFragment
+import com.example.zhpan.banner.fragment.IndicatorFragment
+import com.example.zhpan.banner.fragment.OthersFragment
+import com.example.zhpan.banner.fragment.PageFragment
 
 /**
  * <pre>

+ 4 - 4
app/src/main/java/com/example/zhpan/circleviewpager/adapter/ArticleAdapter.kt → app/src/main/java/com/example/zhpan/banner/adapter/ArticleAdapter.kt

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.adapter
+package com.example.zhpan.banner.adapter
 
 import android.content.Context
 import android.content.res.Resources
@@ -10,9 +10,9 @@ import android.widget.TextView
 import androidx.appcompat.app.AppCompatActivity
 import androidx.viewpager2.widget.ViewPager2
 
-import com.example.zhpan.circleviewpager.R
-import com.example.zhpan.circleviewpager.bean.ArticleWrapper
-import com.example.zhpan.circleviewpager.viewholder.ImageResourceViewHolder
+import com.example.zhpan.banner.R
+import com.example.zhpan.banner.bean.ArticleWrapper
+import com.example.zhpan.banner.viewholder.ImageResourceViewHolder
 import com.zhpan.bannerview.BannerViewPager
 import com.zhpan.indicator.enums.IndicatorStyle
 

+ 6 - 6
app/src/main/java/com/example/zhpan/circleviewpager/adapter/HomeAdapter.java → app/src/main/java/com/example/zhpan/banner/adapter/HomeAdapter.java

@@ -1,12 +1,12 @@
-package com.example.zhpan.circleviewpager.adapter;
+package com.example.zhpan.banner.adapter;
 
 import android.view.View;
 import android.view.ViewGroup;
 
-import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.net.BannerData;
-import com.example.zhpan.circleviewpager.viewholder.NetViewHolder;
-import com.example.zhpan.circleviewpager.viewholder.NewTypeViewHolder;
+import com.example.zhpan.banner.R;
+import com.example.zhpan.banner.net.BannerData;
+import com.example.zhpan.banner.viewholder.NetViewHolder;
+import com.example.zhpan.banner.viewholder.NewTypeViewHolder;
 import com.zhpan.bannerview.BaseBannerAdapter;
 import com.zhpan.bannerview.BaseViewHolder;
 
@@ -43,7 +43,7 @@ public class HomeAdapter extends BaseBannerAdapter<BannerData, BaseViewHolder<Ba
         if (viewType == BannerData.TYPE_NEW) {
             return R.layout.item_new_type;
         }
-        return R.layout.item_net;
+        return R.layout.item_net_image;
     }
 }
 

+ 3 - 3
app/src/main/java/com/example/zhpan/circleviewpager/adapter/ImageResourceAdapter.java → app/src/main/java/com/example/zhpan/banner/adapter/ImageResourceAdapter.java

@@ -1,10 +1,10 @@
-package com.example.zhpan.circleviewpager.adapter;
+package com.example.zhpan.banner.adapter;
 
 import android.view.View;
 import android.view.ViewGroup;
 
-import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.viewholder.ImageResourceViewHolder;
+import com.example.zhpan.banner.R;
+import com.example.zhpan.banner.viewholder.ImageResourceViewHolder;
 import com.zhpan.bannerview.BaseBannerAdapter;
 
 import org.jetbrains.annotations.NotNull;

+ 4 - 6
app/src/main/java/com/example/zhpan/circleviewpager/adapter/WelcomeAdapter.kt → app/src/main/java/com/example/zhpan/banner/adapter/WelcomeAdapter.kt

@@ -1,13 +1,11 @@
-package com.example.zhpan.circleviewpager.adapter
+package com.example.zhpan.banner.adapter
 
 import android.view.View
 import android.view.ViewGroup
-import android.widget.ImageView
-import androidx.recyclerview.widget.RecyclerView
-import com.example.zhpan.circleviewpager.R
+import com.example.zhpan.banner.R
 
-import com.example.zhpan.circleviewpager.bean.CustomBean
-import com.example.zhpan.circleviewpager.viewholder.CustomPageViewHolder
+import com.example.zhpan.banner.bean.CustomBean
+import com.example.zhpan.banner.viewholder.CustomPageViewHolder
 import com.zhpan.bannerview.BaseBannerAdapter
 
 /**

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/bean/ArticleWrapper.kt → app/src/main/java/com/example/zhpan/banner/bean/ArticleWrapper.kt

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.bean
+package com.example.zhpan.banner.bean
 
 class ArticleWrapper {
 

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/bean/CustomBean.kt → app/src/main/java/com/example/zhpan/banner/bean/CustomBean.kt

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.bean
+package com.example.zhpan.banner.bean
 
 class CustomBean {
 

+ 2 - 2
app/src/main/java/com/example/zhpan/circleviewpager/bean/DataWrapper.kt → app/src/main/java/com/example/zhpan/banner/bean/DataWrapper.kt

@@ -1,5 +1,5 @@
-package com.example.zhpan.circleviewpager.bean
+package com.example.zhpan.banner.bean
 
-import com.example.zhpan.circleviewpager.net.BannerData
+import com.example.zhpan.banner.net.BannerData
 
 class DataWrapper(val articleList: List<ArticleWrapper.Article>, val dataBeanList: List<BannerData>)

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/fragment/BaseFragment.kt → app/src/main/java/com/example/zhpan/banner/fragment/BaseFragment.kt

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.fragment
+package com.example.zhpan.banner.fragment
 
 import android.content.Context
 import android.os.Bundle

+ 15 - 15
app/src/main/java/com/example/zhpan/circleviewpager/fragment/HomeFragment.java → app/src/main/java/com/example/zhpan/banner/fragment/HomeFragment.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.fragment;
+package com.example.zhpan.banner.fragment;
 
 import android.os.Bundle;
 import android.view.LayoutInflater;
@@ -12,25 +12,25 @@ import androidx.recyclerview.widget.LinearLayoutManager;
 import androidx.viewpager2.widget.ViewPager2;
 
 import com.blankj.utilcode.util.LogUtils;
-import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.activity.WebViewActivity;
-import com.example.zhpan.circleviewpager.adapter.ArticleAdapter;
-import com.example.zhpan.circleviewpager.adapter.HomeAdapter;
-import com.example.zhpan.circleviewpager.adapter.ImageResourceAdapter;
-import com.example.zhpan.circleviewpager.bean.ArticleWrapper;
-import com.example.zhpan.circleviewpager.bean.DataWrapper;
-import com.example.zhpan.circleviewpager.net.BannerData;
-import com.example.zhpan.circleviewpager.net.RetrofitGnerator;
-import com.example.zhpan.circleviewpager.net.RxUtil;
-import com.example.zhpan.circleviewpager.recyclerview.ui.CustomRecyclerView;
-import com.example.zhpan.circleviewpager.viewholder.ImageResourceViewHolder;
+import com.example.zhpan.banner.R;
+import com.example.zhpan.banner.activity.WebViewActivity;
+import com.example.zhpan.banner.adapter.ArticleAdapter;
+import com.example.zhpan.banner.adapter.HomeAdapter;
+import com.example.zhpan.banner.adapter.ImageResourceAdapter;
+import com.example.zhpan.banner.bean.ArticleWrapper;
+import com.example.zhpan.banner.bean.DataWrapper;
+import com.example.zhpan.banner.net.BannerData;
+import com.example.zhpan.banner.net.RetrofitGnerator;
+import com.example.zhpan.banner.net.RxUtil;
+import com.example.zhpan.banner.recyclerview.ui.CustomRecyclerView;
+import com.example.zhpan.banner.viewholder.ImageResourceViewHolder;
 import com.scwang.smartrefresh.header.MaterialHeader;
 import com.scwang.smartrefresh.layout.SmartRefreshLayout;
 import com.zhpan.bannerview.BannerViewPager;
 import com.zhpan.bannerview.BaseViewHolder;
 import com.zhpan.bannerview.constants.IndicatorGravity;
 import com.zhpan.bannerview.utils.BannerUtils;
-import com.example.zhpan.circleviewpager.net.common.ResponseObserver;
+import com.example.zhpan.banner.net.common.ResponseObserver;
 import com.zhpan.indicator.IndicatorView;
 import com.zhpan.indicator.enums.IndicatorSlideMode;
 import com.zhpan.indicator.enums.IndicatorStyle;
@@ -42,7 +42,7 @@ import java.util.List;
 import io.reactivex.Observable;
 import io.reactivex.schedulers.Schedulers;
 
-import static com.example.zhpan.circleviewpager.net.BannerData.TYPE_NEW;
+import static com.example.zhpan.banner.net.BannerData.TYPE_NEW;
 
 /**
  * Created by zhpan on 2018/7/24.

+ 3 - 3
app/src/main/java/com/example/zhpan/circleviewpager/fragment/IndicatorFragment.java → app/src/main/java/com/example/zhpan/banner/fragment/IndicatorFragment.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.fragment;
+package com.example.zhpan.banner.fragment;
 
 import android.os.Bundle;
 import android.view.View;
@@ -7,8 +7,8 @@ import android.widget.RadioButton;
 import android.widget.RadioGroup;
 
 import com.blankj.utilcode.util.ToastUtils;
-import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.viewholder.ImageResourceViewHolder;
+import com.example.zhpan.banner.R;
+import com.example.zhpan.banner.viewholder.ImageResourceViewHolder;
 import com.zhpan.bannerview.BannerViewPager;
 import com.zhpan.bannerview.BaseBannerAdapter;
 import com.zhpan.bannerview.constants.IndicatorGravity;

+ 5 - 5
app/src/main/java/com/example/zhpan/circleviewpager/fragment/OthersFragment.java → app/src/main/java/com/example/zhpan/banner/fragment/OthersFragment.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.fragment;
+package com.example.zhpan.banner.fragment;
 
 import android.graphics.Color;
 import android.os.Bundle;
@@ -10,10 +10,10 @@ import androidx.annotation.NonNull;
 
 import com.blankj.utilcode.util.LogUtils;
 import com.blankj.utilcode.util.ToastUtils;
-import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.adapter.ImageResourceAdapter;
-import com.example.zhpan.circleviewpager.view.FigureIndicatorView;
-import com.example.zhpan.circleviewpager.viewholder.ImageResourceViewHolder;
+import com.example.zhpan.banner.R;
+import com.example.zhpan.banner.adapter.ImageResourceAdapter;
+import com.example.zhpan.banner.view.FigureIndicatorView;
+import com.example.zhpan.banner.viewholder.ImageResourceViewHolder;
 import com.scwang.smartrefresh.header.MaterialHeader;
 import com.scwang.smartrefresh.layout.SmartRefreshLayout;
 import com.zhpan.bannerview.BannerViewPager;

+ 4 - 4
app/src/main/java/com/example/zhpan/circleviewpager/fragment/PageFragment.java → app/src/main/java/com/example/zhpan/banner/fragment/PageFragment.java

@@ -1,13 +1,13 @@
-package com.example.zhpan.circleviewpager.fragment;
+package com.example.zhpan.banner.fragment;
 
 import android.os.Bundle;
 import android.view.View;
 import android.widget.RadioGroup;
 
 import com.blankj.utilcode.util.ToastUtils;
-import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.adapter.ImageResourceAdapter;
-import com.example.zhpan.circleviewpager.viewholder.ImageResourceViewHolder;
+import com.example.zhpan.banner.R;
+import com.example.zhpan.banner.adapter.ImageResourceAdapter;
+import com.example.zhpan.banner.viewholder.ImageResourceViewHolder;
 import com.zhpan.bannerview.BannerViewPager;
 import com.zhpan.bannerview.annotation.APageStyle;
 import com.zhpan.bannerview.constants.PageStyle;

+ 97 - 0
app/src/main/java/com/example/zhpan/banner/loading/LoadingDialog.java

@@ -0,0 +1,97 @@
+package com.example.zhpan.banner.loading;
+
+import android.app.Dialog;
+import android.content.Context;
+import android.os.Bundle;
+import android.widget.TextView;
+
+import com.airbnb.lottie.LottieAnimationView;
+import com.example.zhpan.banner.R;
+
+public class LoadingDialog extends Dialog {
+
+    private final boolean cancelTouchOutside;
+    private LottieAnimationView lottieAnimationView;
+    private String message;
+    private static final int KEY_NO_DIALOG_STYLE = -1;
+
+    public LoadingDialog(Builder builder) {
+        super(builder.context);
+        cancelTouchOutside = builder.cancelTouchOutside;
+    }
+
+    private LoadingDialog(Builder builder, int themeResId) {
+        super(builder.context, themeResId);
+        cancelTouchOutside = builder.cancelTouchOutside;
+        this.message = builder.message;
+    }
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.layout_loading_dialog);
+        TextView tvMessage = (TextView) findViewById(R.id.tv_loading);
+        if (tvMessage != null) {
+            tvMessage.setText(message);
+        }
+        setCanceledOnTouchOutside(cancelTouchOutside);
+    }
+
+    @Override
+    public void onWindowFocusChanged(boolean hasFocus) {
+        lottieAnimationView = findViewById(R.id.loadingImageView);
+        lottieAnimationView.playAnimation();
+    }
+
+    @Override
+    protected void onStop() {
+        super.onStop();
+        lottieAnimationView.pauseAnimation();
+    }
+
+    public static final class Builder {
+        Context context;
+        private int themeResId = KEY_NO_DIALOG_STYLE;
+        private String message;
+        private boolean cancelTouchOutside;
+
+        public Builder(Context context) {
+            this.context = context;
+        }
+
+        /**
+         * 设置主题
+         *
+         * @param themeResId theme res id
+         * @return CustomProgressDialog.Builder
+         */
+        public Builder setTheme(int themeResId) {
+            this.themeResId = themeResId;
+            return this;
+        }
+
+        public Builder setMessage(String message) {
+            this.message = message;
+            return this;
+        }
+
+        /**
+         * 设置点击dialog外部是否取消dialog
+         *
+         * @param val 点击外部是否取消dialog
+         * @return Builder
+         */
+        public Builder cancelTouchOutside(boolean val) {
+            cancelTouchOutside = val;
+            return this;
+        }
+
+        public LoadingDialog build() {
+            if (themeResId == KEY_NO_DIALOG_STYLE) {
+                return new LoadingDialog(this);
+            } else {
+                return new LoadingDialog(this, themeResId);
+            }
+        }
+    }
+}

+ 60 - 0
app/src/main/java/com/example/zhpan/banner/loading/LoadingUtils.java

@@ -0,0 +1,60 @@
+package com.example.zhpan.banner.loading;
+
+import android.app.Activity;
+import android.content.Context;
+
+import com.example.zhpan.banner.R;
+
+
+/**
+ * Created by zhpan on 2017/5/26.
+ */
+public class LoadingUtils {
+
+    private LoadingDialog mProgressDialog;
+
+    /**
+     * 显示带有文字的ProgressDialog
+     */
+    public void showLoading(Context context, String msg) {
+        if (context == null || context instanceof Activity && ((Activity) context).isFinishing()) {
+            return;
+        }
+
+        if (mProgressDialog == null) {
+            mProgressDialog = new LoadingDialog.Builder(context)
+                    .setTheme(R.style.ProgressDialogStyle)
+                    .setMessage(msg)
+                    .build();
+        }
+        if (!mProgressDialog.isShowing()) {
+            mProgressDialog.show();
+        }
+    }
+
+    /**
+     * 显示ProgressDialog
+     */
+    public void showLoading(Context context) {
+        if (context == null || context instanceof Activity && ((Activity) context).isFinishing()) {
+            return;
+        }
+        if (mProgressDialog == null) {
+            mProgressDialog = new LoadingDialog.Builder(context)
+                    .setTheme(R.style.ProgressDialogStyle)
+                    .build();
+        }
+        if (!mProgressDialog.isShowing()) {
+            mProgressDialog.show();
+        }
+    }
+
+    /**
+     * 取消ProgressDialog
+     */
+    public void dismiss() {
+        if (mProgressDialog != null && mProgressDialog.isShowing()) {
+            mProgressDialog.dismiss();
+        }
+    }
+}

+ 2 - 2
app/src/main/java/com/example/zhpan/circleviewpager/net/ApiService.java → app/src/main/java/com/example/zhpan/banner/net/ApiService.java

@@ -1,6 +1,6 @@
-package com.example.zhpan.circleviewpager.net;
+package com.example.zhpan.banner.net;
 
-import com.example.zhpan.circleviewpager.bean.ArticleWrapper;
+import com.example.zhpan.banner.bean.ArticleWrapper;
 
 import java.util.List;
 

+ 1 - 3
app/src/main/java/com/example/zhpan/circleviewpager/net/BannerData.java → app/src/main/java/com/example/zhpan/banner/net/BannerData.java

@@ -1,6 +1,4 @@
-package com.example.zhpan.circleviewpager.net;
-
-import android.net.Uri;
+package com.example.zhpan.banner.net;
 
 /**
  * <pre>

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/net/Constants.java → app/src/main/java/com/example/zhpan/banner/net/Constants.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.net;
+package com.example.zhpan.banner.net;
 
 /**
  * <pre>

+ 2 - 2
app/src/main/java/com/example/zhpan/circleviewpager/net/RetrofitGnerator.java → app/src/main/java/com/example/zhpan/banner/net/RetrofitGnerator.java

@@ -1,6 +1,6 @@
-package com.example.zhpan.circleviewpager.net;
+package com.example.zhpan.banner.net;
 
-import com.example.zhpan.circleviewpager.net.common.IdeaApi;
+import com.example.zhpan.banner.net.common.IdeaApi;
 
 /**
  * <pre>

+ 63 - 0
app/src/main/java/com/example/zhpan/banner/net/RxUtil.java

@@ -0,0 +1,63 @@
+package com.example.zhpan.banner.net;
+
+import com.example.zhpan.banner.net.common.LoadingTransformerCreator;
+import com.trello.rxlifecycle2.android.ActivityEvent;
+import com.trello.rxlifecycle2.android.FragmentEvent;
+import com.trello.rxlifecycle2.components.support.RxAppCompatActivity;
+import com.trello.rxlifecycle2.components.support.RxFragment;
+
+import io.reactivex.Observable;
+import io.reactivex.ObservableTransformer;
+import io.reactivex.android.schedulers.AndroidSchedulers;
+import io.reactivex.schedulers.Schedulers;
+
+@SuppressWarnings("unused")
+public class RxUtil {
+
+    /**
+     * 统一线程处理
+     *
+     * @return ObservableTransformer
+     */
+    public static <T> ObservableTransformer<T, T> rxSchedulerHelper(final RxAppCompatActivity activity, final boolean showLoading) {    //compose简化线程
+        return observable -> {
+            Observable<T> compose = observable.subscribeOn(Schedulers.io())
+                    .observeOn(AndroidSchedulers.mainThread())
+                    .compose(activity.bindUntilEvent(ActivityEvent.DESTROY));
+            if (showLoading) {
+                return compose.compose(LoadingTransformerCreator.applyLoading(activity));
+            } else {
+                return compose;
+            }
+        };
+    }
+
+    /**
+     * 统一线程处理
+     *
+     * @return ObservableTransformer
+     */
+    public static <T> ObservableTransformer<T, T> rxSchedulerHelper(final RxFragment fragment, final boolean showLoading) {
+        return observable -> {
+            Observable<T> compose = observable.subscribeOn(Schedulers.io())
+                    .observeOn(AndroidSchedulers.mainThread())
+                    .compose(fragment.bindUntilEvent(FragmentEvent.DESTROY));
+            if (showLoading) {
+                return compose.compose(LoadingTransformerCreator.applyLoading(fragment.getActivity()));
+            } else {
+                return compose;
+            }
+        };
+    }
+
+
+    /**
+     * 统一线程处理
+     *
+     * @return ObservableTransformer
+     */
+    public static <T> ObservableTransformer<T, T> rxSchedulerHelper() {    //compose简化线程
+        return observable -> observable.subscribeOn(Schedulers.io())
+                .observeOn(AndroidSchedulers.mainThread());
+    }
+}

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/net/common/BasicResponse.java → app/src/main/java/com/example/zhpan/banner/net/common/BasicResponse.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.net.common;
+package com.example.zhpan.banner.net.common;
 
 /**
  *

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/net/common/Constants.java → app/src/main/java/com/example/zhpan/banner/net/common/Constants.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.net.common;
+package com.example.zhpan.banner.net.common;
 
 /**
  * Created by zhpan on 2018/2/1.

+ 2 - 2
app/src/main/java/com/example/zhpan/circleviewpager/net/common/ErrorCode.java → app/src/main/java/com/example/zhpan/banner/net/common/ErrorCode.java

@@ -1,10 +1,10 @@
 
-package com.example.zhpan.circleviewpager.net.common;
+package com.example.zhpan.banner.net.common;
 
 import androidx.annotation.StringRes;
 
 import com.blankj.utilcode.util.Utils;
-import com.example.zhpan.circleviewpager.R;
+import com.example.zhpan.banner.R;
 
 /**
  * Created by zhpan on 2018/3/27.

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/net/common/IdeaApi.java → app/src/main/java/com/example/zhpan/banner/net/common/IdeaApi.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.net.common;
+package com.example.zhpan.banner.net.common;
 
 import retrofit2.Retrofit;
 

+ 51 - 0
app/src/main/java/com/example/zhpan/banner/net/common/LoadingTransformerCreator.java

@@ -0,0 +1,51 @@
+package com.example.zhpan.banner.net.common;
+
+import android.app.Activity;
+
+import androidx.annotation.NonNull;
+
+import com.example.zhpan.banner.loading.LoadingUtils;
+
+import io.reactivex.CompletableTransformer;
+import io.reactivex.ObservableTransformer;
+import io.reactivex.disposables.Disposable;
+import io.reactivex.functions.Consumer;
+
+/**
+ * Created by zhpan on 2018/3/22.
+ */
+public class LoadingTransformerCreator {
+
+    public static <T> ObservableTransformer<T, T> applyLoading(
+            @NonNull final Activity activity, String msg) {
+        final LoadingUtils dialogUtils = new LoadingUtils();
+        dialogUtils.showLoading(activity, msg);
+        return upstream -> upstream.doOnSubscribe(disposable -> {
+        }).doOnTerminate(dialogUtils::dismiss)
+                .doOnSubscribe((Consumer<Disposable>) disposable -> {
+                });
+    }
+
+    public static <T> ObservableTransformer<T, T> applyLoading(
+            @NonNull final Activity activity) {
+        return applyLoading(activity, "");
+    }
+
+
+    public static CompletableTransformer applyLoadingForCompletable(
+            @NonNull final Activity activity) {
+        return applyLoadingForCompletable(activity, "");
+    }
+
+    public static CompletableTransformer applyLoadingForCompletable(
+            @NonNull final Activity activity, String msg) {
+        final LoadingUtils dialogUtils = new LoadingUtils();
+        dialogUtils.showLoading(activity, msg);
+        return upstream -> upstream.doOnSubscribe(disposable -> {
+
+        }).doOnTerminate(dialogUtils::dismiss)
+                .doOnSubscribe((Consumer<Disposable>) disposable -> {
+                });
+    }
+
+}

+ 4 - 4
app/src/main/java/com/example/zhpan/circleviewpager/net/common/ResponseObserver.java → app/src/main/java/com/example/zhpan/banner/net/common/ResponseObserver.java

@@ -1,14 +1,14 @@
-package com.example.zhpan.circleviewpager.net.common;
+package com.example.zhpan.banner.net.common;
 
 import android.widget.Toast;
 
 import com.blankj.utilcode.util.LogUtils;
 import com.blankj.utilcode.util.ToastUtils;
-import com.example.zhpan.circleviewpager.R;
+import com.example.zhpan.banner.R;
 import com.google.gson.JsonParseException;
 import com.jakewharton.retrofit2.adapter.rxjava2.HttpException;
-import com.example.zhpan.circleviewpager.net.exception.NoDataExceptionException;
-import com.example.zhpan.circleviewpager.net.exception.ServerResponseException;
+import com.example.zhpan.banner.net.exception.NoDataExceptionException;
+import com.example.zhpan.banner.net.exception.ServerResponseException;
 
 import org.json.JSONException;
 

+ 5 - 5
app/src/main/java/com/example/zhpan/circleviewpager/net/common/RetrofitUtils.java → app/src/main/java/com/example/zhpan/banner/net/common/RetrofitUtils.java

@@ -1,13 +1,13 @@
-package com.example.zhpan.circleviewpager.net.common;
+package com.example.zhpan.banner.net.common;
 
 import com.blankj.utilcode.util.Utils;
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import com.jakewharton.retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory;
-import com.example.zhpan.circleviewpager.net.converter.GsonConverterFactory;
-import com.example.zhpan.circleviewpager.net.interceptor.HttpCacheInterceptor;
-import com.example.zhpan.circleviewpager.net.interceptor.HttpHeaderInterceptor;
-import com.example.zhpan.circleviewpager.net.interceptor.LoggingInterceptor;
+import com.example.zhpan.banner.net.converter.GsonConverterFactory;
+import com.example.zhpan.banner.net.interceptor.HttpCacheInterceptor;
+import com.example.zhpan.banner.net.interceptor.HttpHeaderInterceptor;
+import com.example.zhpan.banner.net.interceptor.LoggingInterceptor;
 
 import java.io.File;
 import java.util.concurrent.TimeUnit;

+ 2 - 2
app/src/main/java/com/example/zhpan/circleviewpager/net/converter/GsonConverterFactory.java → app/src/main/java/com/example/zhpan/banner/net/converter/GsonConverterFactory.java

@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-package com.example.zhpan.circleviewpager.net.converter;
+package com.example.zhpan.banner.net.converter;
 
 import com.google.gson.Gson;
 import com.google.gson.TypeAdapter;
 import com.google.gson.reflect.TypeToken;
-import com.example.zhpan.circleviewpager.net.common.BasicResponse;
+import com.example.zhpan.banner.net.common.BasicResponse;
 
 import java.lang.annotation.Annotation;
 import java.lang.reflect.ParameterizedType;

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/net/converter/GsonRequestBodyConverter.java → app/src/main/java/com/example/zhpan/banner/net/converter/GsonRequestBodyConverter.java

@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.example.zhpan.circleviewpager.net.converter;
+package com.example.zhpan.banner.net.converter;
 
 import com.google.gson.Gson;
 import com.google.gson.TypeAdapter;

+ 8 - 8
app/src/main/java/com/example/zhpan/circleviewpager/net/converter/GsonResponseBodyConverter.java → app/src/main/java/com/example/zhpan/banner/net/converter/GsonResponseBodyConverter.java

@@ -14,22 +14,22 @@
  * limitations under the License.
  */
 
-package com.example.zhpan.circleviewpager.net.converter;
+package com.example.zhpan.banner.net.converter;
 
 import com.google.gson.TypeAdapter;
-import com.example.zhpan.circleviewpager.net.common.BasicResponse;
-import com.example.zhpan.circleviewpager.net.common.ErrorCode;
-import com.example.zhpan.circleviewpager.net.exception.NoDataExceptionException;
-import com.example.zhpan.circleviewpager.net.exception.RemoteLoginExpiredException;
-import com.example.zhpan.circleviewpager.net.exception.ServerResponseException;
+import com.example.zhpan.banner.net.common.BasicResponse;
+import com.example.zhpan.banner.net.common.ErrorCode;
+import com.example.zhpan.banner.net.exception.NoDataExceptionException;
+import com.example.zhpan.banner.net.exception.RemoteLoginExpiredException;
+import com.example.zhpan.banner.net.exception.ServerResponseException;
 
 import java.io.IOException;
 
 import okhttp3.ResponseBody;
 import retrofit2.Converter;
 
-import static com.example.zhpan.circleviewpager.net.common.ErrorCode.REMOTE_LOGIN;
-import static com.example.zhpan.circleviewpager.net.common.ErrorCode.SUCCESS;
+import static com.example.zhpan.banner.net.common.ErrorCode.REMOTE_LOGIN;
+import static com.example.zhpan.banner.net.common.ErrorCode.SUCCESS;
 
 final class GsonResponseBodyConverter<T> implements Converter<ResponseBody, Object> {
 

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/net/exception/NoDataExceptionException.java → app/src/main/java/com/example/zhpan/banner/net/exception/NoDataExceptionException.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.net.exception;
+package com.example.zhpan.banner.net.exception;
 
 /**
  * 服务器返回的异常

+ 2 - 2
app/src/main/java/com/example/zhpan/circleviewpager/net/exception/RemoteLoginExpiredException.java → app/src/main/java/com/example/zhpan/banner/net/exception/RemoteLoginExpiredException.java

@@ -1,7 +1,7 @@
 
-package com.example.zhpan.circleviewpager.net.exception;
+package com.example.zhpan.banner.net.exception;
 
-import com.example.zhpan.circleviewpager.net.common.ErrorCode;
+import com.example.zhpan.banner.net.common.ErrorCode;
 
 /**
  * Created by zhpan on 2018/3/27.

+ 2 - 2
app/src/main/java/com/example/zhpan/circleviewpager/net/exception/ServerResponseException.java → app/src/main/java/com/example/zhpan/banner/net/exception/ServerResponseException.java

@@ -1,6 +1,6 @@
-package com.example.zhpan.circleviewpager.net.exception;
+package com.example.zhpan.banner.net.exception;
 
-import com.example.zhpan.circleviewpager.net.common.ErrorCode;
+import com.example.zhpan.banner.net.common.ErrorCode;
 
 /**
  * 服务器返回的异常

+ 2 - 2
app/src/main/java/com/example/zhpan/circleviewpager/net/https/SafeHostnameVerifier.java → app/src/main/java/com/example/zhpan/banner/net/https/SafeHostnameVerifier.java

@@ -1,7 +1,7 @@
-package com.example.zhpan.circleviewpager.net.https;
+package com.example.zhpan.banner.net.https;
 
 
-import com.example.zhpan.circleviewpager.net.common.Constants;
+import com.example.zhpan.banner.net.common.Constants;
 
 import javax.net.ssl.HostnameVerifier;
 import javax.net.ssl.SSLSession;

+ 2 - 2
app/src/main/java/com/example/zhpan/circleviewpager/net/https/SslContextFactory.java → app/src/main/java/com/example/zhpan/banner/net/https/SslContextFactory.java

@@ -1,8 +1,8 @@
-package com.example.zhpan.circleviewpager.net.https;
+package com.example.zhpan.banner.net.https;
 
 
 import com.blankj.utilcode.util.Utils;
-import com.example.zhpan.circleviewpager.R;
+import com.example.zhpan.banner.R;
 
 import java.io.IOException;
 import java.io.InputStream;

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/net/interceptor/HttpCacheInterceptor.java → app/src/main/java/com/example/zhpan/banner/net/interceptor/HttpCacheInterceptor.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.net.interceptor;
+package com.example.zhpan.banner.net.interceptor;
 
 import com.blankj.utilcode.util.LogUtils;
 import com.blankj.utilcode.util.NetworkUtils;

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/net/interceptor/HttpHeaderInterceptor.java → app/src/main/java/com/example/zhpan/banner/net/interceptor/HttpHeaderInterceptor.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.net.interceptor;
+package com.example.zhpan.banner.net.interceptor;
 
 import java.io.IOException;
 

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/net/interceptor/LoggingInterceptor.java → app/src/main/java/com/example/zhpan/banner/net/interceptor/LoggingInterceptor.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.net.interceptor;
+package com.example.zhpan.banner.net.interceptor;
 
 import com.blankj.utilcode.util.LogUtils;
 

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/recyclerview/listener/ICustomClickListener.java → app/src/main/java/com/example/zhpan/banner/recyclerview/listener/ICustomClickListener.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.recyclerview.listener;
+package com.example.zhpan.banner.recyclerview.listener;
 
 import android.view.View;
 

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/recyclerview/listener/ICustomScrollListener.java → app/src/main/java/com/example/zhpan/banner/recyclerview/listener/ICustomScrollListener.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.recyclerview.listener;
+package com.example.zhpan.banner.recyclerview.listener;
 
 /**
  * 2018.11.4

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/recyclerview/listener/IScrollListener.java → app/src/main/java/com/example/zhpan/banner/recyclerview/listener/IScrollListener.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.recyclerview.listener;
+package com.example.zhpan.banner.recyclerview.listener;
 
 /**
  * 2018.11.4

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/recyclerview/module/ViewConfig.java → app/src/main/java/com/example/zhpan/banner/recyclerview/module/ViewConfig.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.recyclerview.module;
+package com.example.zhpan.banner.recyclerview.module;
 
 
 import android.view.View;

+ 4 - 4
app/src/main/java/com/example/zhpan/circleviewpager/recyclerview/ui/CustomAdapter.java → app/src/main/java/com/example/zhpan/banner/recyclerview/ui/CustomAdapter.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.recyclerview.ui;
+package com.example.zhpan.banner.recyclerview.ui;
 
 import android.content.Context;
 import android.os.Build;
@@ -15,9 +15,9 @@ import android.view.ViewGroup;
 import android.widget.FrameLayout;
 
 
-import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.recyclerview.listener.ICustomClickListener;
-import com.example.zhpan.circleviewpager.recyclerview.module.ViewConfig;
+import com.example.zhpan.banner.R;
+import com.example.zhpan.banner.recyclerview.listener.ICustomClickListener;
+import com.example.zhpan.banner.recyclerview.module.ViewConfig;
 
 import java.util.ArrayList;
 import java.util.List;

+ 4 - 4
app/src/main/java/com/example/zhpan/circleviewpager/recyclerview/ui/CustomRecyclerView.java → app/src/main/java/com/example/zhpan/banner/recyclerview/ui/CustomRecyclerView.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.recyclerview.ui;
+package com.example.zhpan.banner.recyclerview.ui;
 
 import android.content.Context;
 import androidx.annotation.NonNull;
@@ -9,9 +9,9 @@ import android.view.View;
 import android.view.ViewGroup;
 
 
-import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.recyclerview.listener.ICustomClickListener;
-import com.example.zhpan.circleviewpager.recyclerview.module.ViewConfig;
+import com.example.zhpan.banner.R;
+import com.example.zhpan.banner.recyclerview.listener.ICustomClickListener;
+import com.example.zhpan.banner.recyclerview.module.ViewConfig;
 
 import java.util.ArrayList;
 

+ 5 - 5
app/src/main/java/com/example/zhpan/circleviewpager/recyclerview/ui/ScrollWrapRecycler.java → app/src/main/java/com/example/zhpan/banner/recyclerview/ui/ScrollWrapRecycler.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.recyclerview.ui;
+package com.example.zhpan.banner.recyclerview.ui;
 
 import android.animation.PropertyValuesHolder;
 import android.animation.ValueAnimator;
@@ -15,10 +15,10 @@ import android.view.ViewGroup;
 import android.widget.LinearLayout;
 import android.widget.TextView;
 
-import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.recyclerview.listener.ICustomClickListener;
-import com.example.zhpan.circleviewpager.recyclerview.listener.ICustomScrollListener;
-import com.example.zhpan.circleviewpager.recyclerview.listener.IScrollListener;
+import com.example.zhpan.banner.R;
+import com.example.zhpan.banner.recyclerview.listener.ICustomClickListener;
+import com.example.zhpan.banner.recyclerview.listener.ICustomScrollListener;
+import com.example.zhpan.banner.recyclerview.listener.IScrollListener;
 
 
 public class ScrollWrapRecycler extends LinearLayout {

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/transform/AccordionTransformer.java → app/src/main/java/com/example/zhpan/banner/transform/AccordionTransformer.java

@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.example.zhpan.circleviewpager.transform;
+package com.example.zhpan.banner.transform;
 
 import android.view.View;
 

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/transform/BaseTransformer.java → app/src/main/java/com/example/zhpan/banner/transform/BaseTransformer.java

@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.example.zhpan.circleviewpager.transform;
+package com.example.zhpan.banner.transform;
 
 import android.view.View;
 

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/transform/DepthPageTransformer.java → app/src/main/java/com/example/zhpan/banner/transform/DepthPageTransformer.java

@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.example.zhpan.circleviewpager.transform;
+package com.example.zhpan.banner.transform;
 
 import android.view.View;
 

+ 6 - 6
app/src/main/java/com/example/zhpan/circleviewpager/transform/PageTransformerFactory.java → app/src/main/java/com/example/zhpan/banner/transform/PageTransformerFactory.java

@@ -1,14 +1,14 @@
-package com.example.zhpan.circleviewpager.transform;
+package com.example.zhpan.banner.transform;
 
 import androidx.viewpager2.widget.ViewPager2;
 
 import com.zhpan.bannerview.transform.ScaleInTransformer;
 
-import static com.example.zhpan.circleviewpager.transform.TransformerStyle.ACCORDION;
-import static com.example.zhpan.circleviewpager.transform.TransformerStyle.DEPTH;
-import static com.example.zhpan.circleviewpager.transform.TransformerStyle.ROTATE;
-import static com.example.zhpan.circleviewpager.transform.TransformerStyle.SCALE_IN;
-import static com.example.zhpan.circleviewpager.transform.TransformerStyle.STACK;
+import static com.example.zhpan.banner.transform.TransformerStyle.ACCORDION;
+import static com.example.zhpan.banner.transform.TransformerStyle.DEPTH;
+import static com.example.zhpan.banner.transform.TransformerStyle.ROTATE;
+import static com.example.zhpan.banner.transform.TransformerStyle.SCALE_IN;
+import static com.example.zhpan.banner.transform.TransformerStyle.STACK;
 
 public class PageTransformerFactory {
 

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/transform/RotateUpTransformer.java → app/src/main/java/com/example/zhpan/banner/transform/RotateUpTransformer.java

@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.example.zhpan.circleviewpager.transform;
+package com.example.zhpan.banner.transform;
 
 import android.view.View;
 

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/transform/StackTransformer.java → app/src/main/java/com/example/zhpan/banner/transform/StackTransformer.java

@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.example.zhpan.circleviewpager.transform;
+package com.example.zhpan.banner.transform;
 
 import android.view.View;
 

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/transform/TransformerStyle.java → app/src/main/java/com/example/zhpan/banner/transform/TransformerStyle.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.transform;
+package com.example.zhpan.banner.transform;
 
 public interface TransformerStyle {
     int NONE = 0;

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/view/CornerImageView.kt → app/src/main/java/com/example/zhpan/banner/view/CornerImageView.kt

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.view
+package com.example.zhpan.banner.view
 
 import android.content.Context
 import android.os.Build

+ 1 - 1
app/src/main/java/com/example/zhpan/circleviewpager/view/FigureIndicatorView.java → app/src/main/java/com/example/zhpan/banner/view/FigureIndicatorView.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.view;
+package com.example.zhpan.banner.view;
 
 import android.content.Context;
 import android.graphics.Canvas;

+ 3 - 3
app/src/main/java/com/example/zhpan/circleviewpager/viewholder/CustomPageViewHolder.java → app/src/main/java/com/example/zhpan/banner/viewholder/CustomPageViewHolder.java

@@ -1,4 +1,4 @@
-package com.example.zhpan.circleviewpager.viewholder;
+package com.example.zhpan.banner.viewholder;
 
 import android.animation.ObjectAnimator;
 import android.view.View;
@@ -6,8 +6,8 @@ import android.widget.ImageView;
 
 import androidx.annotation.NonNull;
 
-import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.bean.CustomBean;
+import com.example.zhpan.banner.R;
+import com.example.zhpan.banner.bean.CustomBean;
 import com.zhpan.bannerview.BaseViewHolder;
 
 public class CustomPageViewHolder extends BaseViewHolder<CustomBean> {

+ 3 - 3
app/src/main/java/com/example/zhpan/circleviewpager/viewholder/ImageResourceViewHolder.java → app/src/main/java/com/example/zhpan/banner/viewholder/ImageResourceViewHolder.java

@@ -1,11 +1,11 @@
-package com.example.zhpan.circleviewpager.viewholder;
+package com.example.zhpan.banner.viewholder;
 
 import android.view.View;
 
 import androidx.annotation.NonNull;
 
-import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.view.CornerImageView;
+import com.example.zhpan.banner.R;
+import com.example.zhpan.banner.view.CornerImageView;
 import com.zhpan.bannerview.BaseViewHolder;
 
 /**

+ 4 - 6
app/src/main/java/com/example/zhpan/circleviewpager/viewholder/NetViewHolder.java → app/src/main/java/com/example/zhpan/banner/viewholder/NetViewHolder.java

@@ -1,15 +1,13 @@
-package com.example.zhpan.circleviewpager.viewholder;
+package com.example.zhpan.banner.viewholder;
 
 import android.view.View;
 
 import androidx.annotation.NonNull;
 
 import com.bumptech.glide.Glide;
-import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
-import com.bumptech.glide.request.RequestOptions;
-import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.net.BannerData;
-import com.example.zhpan.circleviewpager.view.CornerImageView;
+import com.example.zhpan.banner.R;
+import com.example.zhpan.banner.net.BannerData;
+import com.example.zhpan.banner.view.CornerImageView;
 import com.zhpan.bannerview.BaseViewHolder;
 import com.zhpan.bannerview.utils.BannerUtils;
 

+ 3 - 5
app/src/main/java/com/example/zhpan/circleviewpager/viewholder/NewTypeViewHolder.java → app/src/main/java/com/example/zhpan/banner/viewholder/NewTypeViewHolder.java

@@ -1,13 +1,11 @@
-package com.example.zhpan.circleviewpager.viewholder;
+package com.example.zhpan.banner.viewholder;
 
 import android.view.View;
-import android.widget.MediaController;
-import android.widget.VideoView;
 
 import androidx.annotation.NonNull;
 
-import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.net.BannerData;
+import com.example.zhpan.banner.R;
+import com.example.zhpan.banner.net.BannerData;
 import com.zhpan.bannerview.BaseViewHolder;
 
 /**

+ 2 - 4
app/src/main/java/com/example/zhpan/circleviewpager/viewholder/PhotoViewHolder.kt → app/src/main/java/com/example/zhpan/banner/viewholder/PhotoViewHolder.kt

@@ -1,11 +1,9 @@
-package com.example.zhpan.circleviewpager.viewholder
+package com.example.zhpan.banner.viewholder
 
 import android.view.View
-import android.widget.ImageView
 import android.widget.Toast
 
-import com.example.zhpan.circleviewpager.R
-import com.github.chrisbanes.photoview.PhotoView
+import com.example.zhpan.banner.R
 import com.zhpan.bannerview.BaseViewHolder
 
 /**

+ 0 - 77
app/src/main/java/com/example/zhpan/circleviewpager/net/RxUtil.java

@@ -1,77 +0,0 @@
-package com.example.zhpan.circleviewpager.net;
-
-import com.example.zhpan.circleviewpager.net.common.ProgressUtils;
-import com.trello.rxlifecycle2.android.ActivityEvent;
-import com.trello.rxlifecycle2.android.FragmentEvent;
-import com.trello.rxlifecycle2.components.support.RxAppCompatActivity;
-import com.trello.rxlifecycle2.components.support.RxFragment;
-
-import io.reactivex.Observable;
-import io.reactivex.ObservableSource;
-import io.reactivex.ObservableTransformer;
-import io.reactivex.android.schedulers.AndroidSchedulers;
-import io.reactivex.schedulers.Schedulers;
-
-public class RxUtil {
-
-    /**
-     * 统一线程处理
-     *
-     * @param <T>
-     * @return
-     */
-    public static <T> ObservableTransformer<T, T> rxSchedulerHelper(final RxAppCompatActivity activity, final boolean showLoading) {    //compose简化线程
-        return new ObservableTransformer<T, T>() {
-            @Override
-            public ObservableSource<T> apply(Observable<T> observable) {
-                Observable<T> compose = observable.subscribeOn(Schedulers.io())
-                        .observeOn(AndroidSchedulers.mainThread())
-                        .compose(activity.<T>bindUntilEvent(ActivityEvent.DESTROY));
-                if (showLoading) {
-                    return compose.compose(ProgressUtils.<T>applyProgressBar(activity));
-                } else {
-                    return compose;
-                }
-            }
-        };
-    }
-
-    /**
-     * 统一线程处理
-     *
-     * @param <T>
-     * @return
-     */
-    public static <T> ObservableTransformer<T, T> rxSchedulerHelper(final RxFragment fragment, final boolean showLoading) {
-        return new ObservableTransformer<T, T>() {
-            @Override
-            public ObservableSource<T> apply(Observable<T> observable) {
-                Observable<T> compose = observable.subscribeOn(Schedulers.io())
-                        .observeOn(AndroidSchedulers.mainThread())
-                        .compose(fragment.<T>bindUntilEvent(FragmentEvent.DESTROY));
-                if (showLoading) {
-                    return compose.compose(ProgressUtils.<T>applyProgressBar(fragment.getActivity()));
-                } else {
-                    return compose;
-                }
-            }
-        };
-    }
-
-
-    /**
-     * 统一线程处理
-     *
-     * @param <T>
-     * @return
-     */
-    public static <T> ObservableTransformer<T, T> rxSchedulerHelper() {    //compose简化线程
-        return new ObservableTransformer<T, T>() {
-            @Override
-            public ObservableSource<T> apply(Observable<T> observable) {
-                return observable.subscribeOn(Schedulers.io())
-                        .observeOn(AndroidSchedulers.mainThread());
-            }
-        };
-    }
-}

+ 0 - 62
app/src/main/java/com/example/zhpan/circleviewpager/net/common/ProgressUtils.java

@@ -1,62 +0,0 @@
-package com.example.zhpan.circleviewpager.net.common;
-
-import android.app.Activity;
-import androidx.annotation.NonNull;
-
-import com.example.zhpan.circleviewpager.net.dialog.DialogUtils;
-
-import java.lang.ref.WeakReference;
-
-import io.reactivex.Observable;
-import io.reactivex.ObservableSource;
-import io.reactivex.ObservableTransformer;
-import io.reactivex.disposables.Disposable;
-import io.reactivex.functions.Action;
-import io.reactivex.functions.Consumer;
-
-/**
- * Created by zhpan on 2018/3/22.
- */
-
-public class ProgressUtils {
-    public static <T> ObservableTransformer<T, T> applyProgressBar(
-            @NonNull final Activity activity, String msg) {
-        final WeakReference<Activity> activityWeakReference = new WeakReference<>(activity);
-        final DialogUtils dialogUtils = new DialogUtils();
-        dialogUtils.showProgress(activityWeakReference.get());
-        return new ObservableTransformer<T, T>() {
-            @Override
-            public ObservableSource<T> apply(Observable<T> upstream) {
-                return upstream.doOnSubscribe(new Consumer<Disposable>() {
-                    @Override
-                    public void accept(Disposable disposable) throws Exception {
-
-                    }
-                }).doOnTerminate(new Action() {
-                    @Override
-                    public void run() throws Exception {
-                        Activity context;
-                        if ((context = activityWeakReference.get()) != null
-                                && !context.isFinishing()) {
-                            dialogUtils.dismissProgress();
-                        }
-                    }
-                }).doOnSubscribe(new Consumer<Disposable>() {
-                    @Override
-                    public void accept(Disposable disposable) throws Exception {
-                        /*Activity context;
-                        if ((context = activityWeakReference.get()) != null
-                                && !context.isFinishing()) {
-                            dialogUtils.dismissProgress();
-                        }*/
-                    }
-                });
-            }
-        };
-    }
-
-    public static <T> ObservableTransformer<T, T> applyProgressBar(
-            @NonNull final Activity activity) {
-        return applyProgressBar(activity, "");
-    }
-}

+ 0 - 108
app/src/main/java/com/example/zhpan/circleviewpager/net/dialog/CustomProgressDialog.java

@@ -1,108 +0,0 @@
-package com.example.zhpan.circleviewpager.net.dialog;
-
-import android.app.Dialog;
-import android.content.Context;
-import android.graphics.drawable.AnimationDrawable;
-import android.os.Bundle;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.widget.ImageView;
-import android.widget.TextView;
-
-import com.example.zhpan.circleviewpager.R;
-
-
-/**
- * Created by zhpan on 2017/4/13.
- */
-
-public class CustomProgressDialog extends Dialog {
-    private View mDialogView;
-    private boolean cancelTouchOutside;
-    private AnimationDrawable animationDrawable;
-
-    public CustomProgressDialog(Builder builder) {
-        super(builder.context);
-        mDialogView = builder.mDialogView;
-        cancelTouchOutside = builder.cancelTouchOutside;
-    }
-
-    private CustomProgressDialog(Builder builder, int themeResId) {
-        super(builder.context, themeResId);
-        mDialogView = builder.mDialogView;
-        cancelTouchOutside = builder.cancelTouchOutside;
-    }
-
-    @Override
-    protected void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        setContentView(mDialogView);
-        setCanceledOnTouchOutside(cancelTouchOutside);
-    }
-
-    @Override
-    public void onWindowFocusChanged(boolean hasFocus) {
-        if (mDialogView == null) {
-            return;
-        }
-        //添加控件  执行帧动画
-        ImageView imageView = (ImageView) mDialogView.findViewById(R.id.loadingImageView);
-        animationDrawable = (AnimationDrawable) imageView.getBackground();
-        animationDrawable.start();
-    }
-
-    @Override
-    protected void onStop() {
-        super.onStop();
-        animationDrawable.stop();
-    }
-
-    public static final class Builder {
-        Context context;
-        private int resStyle = -1;
-        private View mDialogView;
-        private boolean cancelTouchOutside;
-
-        public Builder(Context context) {
-            this.context = context;
-            mDialogView = LayoutInflater.from(context).inflate(R.layout.dialog_progress, null);
-        }
-
-        /**
-         * 设置主题
-         * @param resStyle style id
-         * @return CustomProgressDialog.Builder
-         */
-        public Builder setTheme(int resStyle) {
-            this.resStyle = resStyle;
-            return this;
-        }
-
-        public Builder setMessage(String message) {
-            TextView tvMessage = (TextView) mDialogView.findViewById(R.id.tv_loadingmsg);
-            if (tvMessage != null) {
-                tvMessage.setText(message);
-            }
-            return this;
-        }
-
-        /**
-         * 设置点击dialog外部是否取消dialog
-         *
-         * @param val 点击外部是否取消dialog
-         * @return
-         */
-        public Builder cancelTouchOutside(boolean val) {
-            cancelTouchOutside = val;
-            return this;
-        }
-
-        public CustomProgressDialog build() {
-            if (resStyle != -1) {
-                return new CustomProgressDialog(this, resStyle);
-            } else {
-                return new CustomProgressDialog(this);
-            }
-        }
-    }
-}

+ 0 - 60
app/src/main/java/com/example/zhpan/circleviewpager/net/dialog/DialogUtils.java

@@ -1,60 +0,0 @@
-package com.example.zhpan.circleviewpager.net.dialog;
-
-import android.content.Context;
-
-import com.example.zhpan.circleviewpager.R;
-
-
-/**
- * Created by zhpan on 2017/5/26.
- * Description:
- */
-
-public class DialogUtils {
-    //  加载进度的dialog
-    private CustomProgressDialog mProgressDialog;
-
-    /**
-     * 显示ProgressDialog
-     */
-    public void showProgress(Context context, String msg) {
-       /* if (context == null || context.isFinishing()) {
-            return;
-        }*/
-        if(mProgressDialog==null){
-            mProgressDialog= new CustomProgressDialog.Builder(context)
-                    .setTheme(R.style.ProgressDialogStyle)
-                    .setMessage(msg)
-                    .build();
-        }
-        if(mProgressDialog!=null&&!mProgressDialog.isShowing()) {
-            mProgressDialog.show();
-        }
-    }
-
-    /**
-     * 显示ProgressDialog
-     */
-    public void showProgress(Context context) {
-        /*if (activity == null || activity.isFinishing()) {
-            return;
-        }*/
-        if(mProgressDialog==null){
-            mProgressDialog= new CustomProgressDialog.Builder(context)
-                    .setTheme(R.style.ProgressDialogStyle)
-                    .build();
-        }
-        if(mProgressDialog!=null&&!mProgressDialog.isShowing()) {
-            mProgressDialog.show();
-        }
-    }
-
-    /**
-     * 取消ProgressDialog
-     */
-    public void dismissProgress() {
-        if (mProgressDialog != null&&mProgressDialog.isShowing()) {
-            mProgressDialog.dismiss();
-        }
-    }
-}

TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/advertise0.jpg


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/advertise1.jpg


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/advertise2.jpg


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/advertise3.jpg


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/advertise4.jpg


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/heart_empty.png


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/heart_red.png


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/ic_banner.png


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/ic_email.png


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/ic_indicator.png


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/ic_qq_group.png


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/progress_1.png


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/progress_2.png


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/progress_3.png


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/progress_4.png


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/progress_5.png


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/progress_6.png


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/progress_7.png


TEMPAT SAMPAH
app/src/main/res/drawable-xxxhdpi/progress_8.png


+ 0 - 13
app/src/main/res/drawable/progress_round.xml

@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<animation-list
-	xmlns:android="http://schemas.android.com/apk/res/android"
-  	android:oneshot="false">
-    <item android:drawable="@drawable/progress_1" android:duration="200"/>
-    <item android:drawable="@drawable/progress_2" android:duration="200"/>
-    <item android:drawable="@drawable/progress_3" android:duration="200"/>
-    <item android:drawable="@drawable/progress_4" android:duration="200"/>
-    <item android:drawable="@drawable/progress_5" android:duration="200"/>
-    <item android:drawable="@drawable/progress_6" android:duration="200"/>
-    <item android:drawable="@drawable/progress_7" android:duration="200"/>
-    <item android:drawable="@drawable/progress_8" android:duration="200"/>
-</animation-list>

+ 0 - 19
app/src/main/res/layout/dialog_progress.xml

@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:orientation="vertical">
-    <ImageView
-        android:id="@+id/loadingImageView"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:background="@drawable/progress_round"
-        android:layout_gravity="center"/>
-    <TextView
-        android:id="@+id/tv_loadingmsg"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_gravity="center"
-        android:textSize="20dp"/>
-</LinearLayout>

+ 1 - 1
app/src/main/res/layout/fragment_home.xml

@@ -68,7 +68,7 @@
         android:overScrollMode="never"
         app:layout_behavior="@string/appbar_scrolling_view_behavior">
 
-        <com.example.zhpan.circleviewpager.recyclerview.ui.CustomRecyclerView
+        <com.example.zhpan.banner.recyclerview.ui.CustomRecyclerView
             android:id="@+id/recycler_view"
             android:layout_width="match_parent"
             android:layout_height="match_parent" />

+ 3 - 7
app/src/main/res/layout/item_home_banner.xml

@@ -1,9 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<com.zhpan.bannerview.BannerViewPager xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/banner_view3"
     android:layout_width="match_parent"
-    android:layout_height="wrap_content">
-    <com.zhpan.bannerview.BannerViewPager
-        android:id="@+id/banner_view3"
-        android:layout_width="match_parent"
-        android:layout_height="@dimen/dp_120"/>
-</LinearLayout>
+    android:layout_height="@dimen/dp_120" />

+ 0 - 31
app/src/main/res/layout/item_net.xml

@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent">
-
-    <com.example.zhpan.circleviewpager.view.CornerImageView
-        android:id="@+id/banner_image"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent" />
-
-    <!--<LinearLayout
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_alignParentBottom="true"
-        android:background="#66000000"
-        android:gravity="center_vertical">
-
-        <TextView
-            android:id="@+id/tv_describe"
-            android:layout_width="wrap_content"
-            android:layout_height="match_parent"
-            android:layout_gravity="center_vertical"
-            android:layout_marginStart="15dp"
-            android:gravity="center_vertical"
-            android:paddingTop="5dp"
-            android:paddingBottom="5dp"
-            android:textColor="#FFFFFF"
-            android:textSize="16sp" />
-    </LinearLayout>-->
-
-</RelativeLayout>

+ 6 - 0
app/src/main/res/layout/item_net_image.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<com.example.zhpan.banner.view.CornerImageView xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/banner_image"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:scaleType="centerCrop" />

+ 1 - 1
app/src/main/res/layout/item_page_indicator.xml

@@ -3,7 +3,7 @@
     android:layout_width="match_parent"
     android:layout_height="match_parent">
 
-    <com.example.zhpan.circleviewpager.view.CornerImageView
+    <com.example.zhpan.banner.view.CornerImageView
         android:id="@+id/banner_image"
         android:layout_width="match_parent"
         android:layout_height="match_parent"

+ 0 - 21
app/src/main/res/layout/item_photo_view.xml

@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent">
-
-    <com.github.chrisbanes.photoview.PhotoView
-        android:id="@+id/banner_image"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:scaleType="fitXY"/>
-
-    <TextView
-        android:id="@+id/tv_describe"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_alignParentBottom="true"
-        android:layout_marginStart="@dimen/dp_10"
-        android:layout_marginBottom="@dimen/dp_10"
-        android:textColor="#FFFFFF"
-        android:textSize="@dimen/sp_16" />
-</RelativeLayout>

+ 1 - 1
app/src/main/res/layout/item_slide_mode.xml

@@ -3,7 +3,7 @@
     android:layout_width="match_parent"
     android:layout_height="match_parent">
 
-    <com.example.zhpan.circleviewpager.view.CornerImageView
+    <com.example.zhpan.banner.view.CornerImageView
         android:id="@+id/banner_image"
         android:layout_width="match_parent"
         android:layout_height="match_parent"

Beberapa file tidak ditampilkan karena terlalu banyak file yang berubah dalam diff ini