Przeglądaj źródła

Merge remote-tracking branch 'origin/sheep_develop' into sheep_tinker

zengjiebin 7 lat temu
rodzic
commit
3280d0ad3c
39 zmienionych plików z 260 dodań i 477 usunięć
  1. 5 2
      app/build.gradle
  2. BIN
      app/libs/compresshelper-release.jar
  3. 2 1
      app/src/main/java/com/kfzs/duanduan/adp/AdpCommonRecy.java
  4. 1 1
      app/src/main/java/com/kfzs/duanduan/fragment/AbsFgtMyMoney.java
  5. 1 1
      app/src/main/java/com/kfzs/duanduan/fragment/FgtCreditCardProgressQuery.java
  6. 1 1
      app/src/main/java/com/kfzs/duanduan/fragment/FgtCreditCardTaskList.java
  7. 1 1
      app/src/main/java/com/kfzs/duanduan/fragment/FgtFind.java
  8. 1 1
      app/src/main/java/com/kfzs/duanduan/fragment/FgtFriendExtractPage.java
  9. 8 7
      app/src/main/java/com/kfzs/duanduan/fragment/FgtGameDetail.java
  10. 0 1
      app/src/main/java/com/kfzs/duanduan/fragment/FgtPersonalCenter.java
  11. 1 1
      app/src/main/java/com/kfzs/duanduan/fragment/FgtSignRankings.java
  12. 4 4
      app/src/main/java/com/sheep/gamegroup/absBase/AbsChooseImageActivity.java
  13. 16 39
      app/src/main/java/com/sheep/gamegroup/absBase/BaseActivity.java
  14. 6 1
      app/src/main/java/com/sheep/gamegroup/helper/DownloadHelper.java
  15. 0 3
      app/src/main/java/com/sheep/gamegroup/model/util/SheepSubscriber.java
  16. 0 2
      app/src/main/java/com/sheep/gamegroup/statistics/AppStatistics.java
  17. 15 11
      app/src/main/java/com/sheep/gamegroup/util/CommonUtil.java
  18. 5 0
      app/src/main/java/com/sheep/gamegroup/util/ListUtil.java
  19. 9 1
      app/src/main/java/com/sheep/gamegroup/util/TestUtil.java
  20. 17 5
      app/src/main/java/com/sheep/gamegroup/util/ViewUtil.java
  21. 1 0
      app/src/main/java/com/sheep/gamegroup/view/activity/ActFindGame.java
  22. 1 0
      app/src/main/java/com/sheep/gamegroup/view/activity/ActFindInformation.java
  23. 2 2
      app/src/main/java/com/sheep/gamegroup/view/activity/AskGetMoneyAct.java
  24. 1 2
      app/src/main/java/com/sheep/gamegroup/view/activity/TaskDetailCreditCardAct.java
  25. 6 19
      app/src/main/java/com/sheep/gamegroup/view/adapter/TaskListItemAdp.java
  26. 5 7
      app/src/main/java/com/sheep/gamegroup/view/adapter/expandadapter/AdpPayGameDialog.java
  27. 13 4
      app/src/main/java/com/sheep/gamegroup/view/dialog/DialogShowLoading.java
  28. 1 1
      app/src/main/java/com/sheep/gamegroup/view/dialog/DialogPayGame.java
  29. 56 0
      app/src/main/java/com/sheep/gamegroup/view/dialog/DialogProgress.java
  30. 16 24
      app/src/main/java/com/sheep/jiuyan/samllsheep/base/BaseFragment.java
  31. 31 0
      app/src/main/res/layout/dialog_loading.xml
  32. 30 0
      app/src/main/res/layout/dialog_progress.xml
  33. 0 28
      app/src/main/res/layout/dialog_show_loading.xml
  34. 1 1
      app/src/main/res/layout/x_ask_top5_item.xml
  35. 1 1
      app/src/main/res/layout/x_ask_top5_title.xml
  36. 1 1
      app/src/main/res/values/common.xml
  37. 1 0
      app/src/main/res/values/str_network_strings.xml
  38. 0 28
      kfzslibrary/src/main/java/com/kfzs/libs/widget/rv/BaseRecyclerViewAdapter.java
  39. 0 276
      view/src/main/java/com/kfzs/android/view/UXUtils.java

+ 5 - 2
app/build.gradle

@@ -249,7 +249,6 @@ dependencies {
 
     annotationProcessor 'com.arialyy.aria:aria-compiler:3.3.16'
     compile 'com.sunfusheng:marqueeview:1.3.3'
-    compile 'com.github.nanchen2251:CompressHelper:1.0.5'
     compile files('libs/alipaySdk-20170922.jar')
     //极光
     compile files('libs/jcore-android-1.2.0.jar')
@@ -262,7 +261,11 @@ dependencies {
     compile files('libs/mdsdk.jar')
     //轮播图
     compile 'com.youth.banner:banner:1.4.10'  //最新版本
-
+    //loading
+    compile 'com.github.ybq:Android-SpinKit:1.1.0'
+//    compile 'com.github.nanchen2251:CompressHelper:1.0.5'
+//    compile(name: 'compresshelper-release', ext: 'aar')
+    compile files('libs/compresshelper-release.jar')
 }
 static def releaseTime() {
     return new Date().format("MMddHHmm", TimeZone.getDefault())

BIN
app/libs/compresshelper-release.jar


+ 2 - 1
app/src/main/java/com/kfzs/duanduan/adp/AdpCommonRecy.java

@@ -5,6 +5,7 @@ import android.support.v7.widget.RecyclerView;
 import android.view.ViewGroup;
 
 import com.kfzs.appstore.utils.adapter.recyclerview.ViewHolder;
+import com.sheep.gamegroup.util.ListUtil;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -42,7 +43,7 @@ public abstract class AdpCommonRecy<T> extends RecyclerView.Adapter<ViewHolder>
     }
 
     public void add(T t, int position) {
-        this.mListDatas.set(position, t);
+        ListUtil.set(this.mListDatas, t, position);
     }
 
     public void clear() {

+ 1 - 1
app/src/main/java/com/kfzs/duanduan/fragment/AbsFgtMyMoney.java

@@ -144,7 +144,7 @@ public abstract class AbsFgtMyMoney extends BaseFragment {
         empty_view.setVisibility(View.INVISIBLE);
         initObservable(page, per_page).subscribeOn(Schedulers.io())
                 .observeOn(AndroidSchedulers.mainThread())
-                .subscribe(new SheepSubscriber<BaseMessage>(getContext()) {
+                .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.getInstance()) {
                     @Override
                     public void onNext(BaseMessage baseMessage) {
                         List<? extends ILog> newList = getDatas(baseMessage);

+ 1 - 1
app/src/main/java/com/kfzs/duanduan/fragment/FgtCreditCardProgressQuery.java

@@ -66,7 +66,7 @@ public class FgtCreditCardProgressQuery extends BaseFragment {
         SheepApp.getInstance().getNetComponent().getApiService().getCreditCardScheduleList()
                 .subscribeOn(Schedulers.io())
                 .observeOn(AndroidSchedulers.mainThread())
-                .subscribe(new SheepSubscriber<BaseMessage>(getContext()) {
+                .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.getInstance()) {
                     @Override
                     public void onNext(BaseMessage baseMessage) {
                         List<CreditCardProgressQuery> newList = baseMessage.getDatas(CreditCardProgressQuery.class);

+ 1 - 1
app/src/main/java/com/kfzs/duanduan/fragment/FgtCreditCardTaskList.java

@@ -85,7 +85,7 @@ public class FgtCreditCardTaskList extends BaseFragment {
         SheepApp.getInstance().getNetComponent().getApiService().getReleaseTaskCreditCard()
                         .subscribeOn(Schedulers.io())
                         .observeOn(AndroidSchedulers.mainThread())
-                        .subscribe(new SheepSubscriber<BaseMessage>(getContext()) {
+                        .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.getInstance()) {
                             @Override
                             public void onNext(BaseMessage baseMessage) {
                                 List<TaskReleaseEty> newList = baseMessage.getDatas(TaskReleaseEty.class);

+ 1 - 1
app/src/main/java/com/kfzs/duanduan/fragment/FgtFind.java

@@ -51,7 +51,7 @@ public class FgtFind extends BaseCompatFragment {
 
     private GiftpackListAdapter mAdapter;
     private void initView() {
-        mAdapter = new GiftpackListAdapter(getFragmentManager(), getContext());
+        mAdapter = new GiftpackListAdapter(getFragmentManager(), SheepApp.getInstance());
         mAdapter.add(FgtFindChild.newInstance(0), "全部");
         pager.setAdapter(mAdapter);
         indicator.setupWithViewPager(pager);

+ 1 - 1
app/src/main/java/com/kfzs/duanduan/fragment/FgtFriendExtractPage.java

@@ -91,7 +91,7 @@ public class FgtFriendExtractPage extends BaseFragment {
         SheepApp.getInstance().getNetComponent().getApiService().getUserFriendList(page, per_page)
                 .subscribeOn(Schedulers.io())
                 .observeOn(AndroidSchedulers.mainThread())
-                .subscribe(new SheepSubscriber<BaseMessage>(getContext()) {
+                .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.getInstance()) {
                     @Override
                     public void onNext(BaseMessage baseMessage) {
                         List<Friend> friendList = baseMessage.getDatas(Friend.class);

+ 8 - 7
app/src/main/java/com/kfzs/duanduan/fragment/FgtGameDetail.java

@@ -31,6 +31,7 @@ import com.kfzs.duanduan.utils.net.APIRequestInstance;
 import com.kfzs.duanduan.view.KFProgressButton;
 import com.sheep.gamegroup.util.Jump2View;
 import com.sheep.jiuyan.samllsheep.R;
+import com.sheep.jiuyan.samllsheep.SheepApp;
 
 import org.greenrobot.eventbus.EventBus;
 import org.greenrobot.eventbus.Subscribe;
@@ -98,7 +99,7 @@ public class FgtGameDetail extends BaseCompatFragment {
         if (mOnDownCallback == null) {
             mOnDownCallback = DownBtnUtils.installBtnStatus(mInstallButtonMgr);
         }
-        EventDownloadHandler.newInstance(getContext(), mOnDownCallback)
+        EventDownloadHandler.newInstance(SheepApp.getInstance(), mOnDownCallback)
                 .setmTag(TAG).handlDownloadResult(info);
     }
 
@@ -134,10 +135,10 @@ public class FgtGameDetail extends BaseCompatFragment {
                     mGsIcon4.setTag(R.id.view_tag_game_icon, gsGamesList.get(3).getId());
 
 
-                    DownBtnUtils.addDownloadBtnListener(mGsBtn1, getContext(), mInstallButtonMgr, gsGamesList.get(0), "gsGame_01");
-                    DownBtnUtils.addDownloadBtnListener(mGsBtn2, getContext(), mInstallButtonMgr, gsGamesList.get(1), "gsGame_02");
-                    DownBtnUtils.addDownloadBtnListener(mGsBtn3, getContext(), mInstallButtonMgr, gsGamesList.get(2), "gsGame_03");
-                    DownBtnUtils.addDownloadBtnListener(mGsBtn4, getContext(), mInstallButtonMgr, gsGamesList.get(3), "gsGame_04");
+                    DownBtnUtils.addDownloadBtnListener(mGsBtn1, SheepApp.getInstance(), mInstallButtonMgr, gsGamesList.get(0), "gsGame_01");
+                    DownBtnUtils.addDownloadBtnListener(mGsBtn2, SheepApp.getInstance(), mInstallButtonMgr, gsGamesList.get(1), "gsGame_02");
+                    DownBtnUtils.addDownloadBtnListener(mGsBtn3, SheepApp.getInstance(), mInstallButtonMgr, gsGamesList.get(2), "gsGame_03");
+                    DownBtnUtils.addDownloadBtnListener(mGsBtn4, SheepApp.getInstance(), mInstallButtonMgr, gsGamesList.get(3), "gsGame_04");
 
                 } catch (Exception e) {
                     e.printStackTrace();
@@ -176,7 +177,7 @@ public class FgtGameDetail extends BaseCompatFragment {
         mGsBtn3 = mContentView.findViewById(R.id.downbtn_fgt_game_detail_3);
         mGsBtn4 = mContentView.findViewById(R.id.downbtn_fgt_game_detail_4);
 
-        mRvImags.setLayoutManager(new LinearLayoutManager(getContext(), LinearLayoutManager.HORIZONTAL, false));
+        mRvImags.setLayoutManager(new LinearLayoutManager(SheepApp.getInstance(), LinearLayoutManager.HORIZONTAL, false));
         mRvImags.setNestedScrollingEnabled(false);
 
     }
@@ -191,7 +192,7 @@ public class FgtGameDetail extends BaseCompatFragment {
         Collections.addAll(urlList, urls);
         if (mGameDesc != null)
             mGameDesc.setText(game.getIntroduce());
-        mRecyclerViewAdapter = new RecyclerViewAdapter<String>(getContext(), R.layout.item_image, urlList) {
+        mRecyclerViewAdapter = new RecyclerViewAdapter<String>(SheepApp.getInstance(), R.layout.item_image, urlList) {
             @Override
             public void convert(ViewHolder viewHolder, String url, final int position) {
                 View view = viewHolder.getView(R.id.img_detail);

+ 0 - 1
app/src/main/java/com/kfzs/duanduan/fragment/FgtPersonalCenter.java

@@ -10,7 +10,6 @@ import android.view.ViewGroup;
 import android.widget.ImageView;
 import android.widget.TextView;
 
-import com.alibaba.fastjson.JSONObject;
 import com.kfzs.duanduan.BaseCompatFragment;
 import com.kfzs.duanduan.utils.ApkUtils;
 import com.sheep.gamegroup.model.entity.AgentEntity;

+ 1 - 1
app/src/main/java/com/kfzs/duanduan/fragment/FgtSignRankings.java

@@ -119,7 +119,7 @@ public class FgtSignRankings extends BaseCompatFragment implements SignRankingsC
             Log.d("Dream","empty type:"+type);
             empty_view.setVisibility(View.GONE);
             main_content.setVisibility(View.VISIBLE);
-            recyclerViewAdapter = new RecyclerViewAdapter<PunchEntity>(getContext(), R.layout.sign_rankings_item, list) {
+            recyclerViewAdapter = new RecyclerViewAdapter<PunchEntity>(SheepApp.getInstance(), R.layout.sign_rankings_item, list) {
                 @Override
                 public void convert(ViewHolder viewHolder, PunchEntity punchEntity, final int position) {
                     ImageView sign_iv_icon = viewHolder.getView(R.id.sign_iv_icon);

+ 4 - 4
app/src/main/java/com/sheep/gamegroup/absBase/AbsChooseImageActivity.java

@@ -10,7 +10,7 @@ import com.kfzs.duanduan.react.upfile.UpFileListener;
 import com.kfzs.duanduan.react.upfile.UpFileUtils;
 import com.sheep.gamegroup.model.entity.UploadResult;
 import com.sheep.gamegroup.util.ListUtil;
-import com.sheep.gamegroup.view.dialog.DialogShowLoading;
+import com.sheep.gamegroup.view.dialog.DialogProgress;
 import com.sheep.jiuyan.samllsheep.utils.G;
 import com.yalantis.ucrop.UCrop;
 
@@ -35,7 +35,7 @@ public abstract class AbsChooseImageActivity extends BaseActivity implements UpF
     protected String path;
     protected List<String> urls = new ArrayList<>();
 
-    private DialogShowLoading dialogShowLoading;
+    private DialogProgress dialogShowLoading;
     public static final int DEFAULT_MAX_COUNT = 7;//上传任务截图的最大个数
 
     public void showChooseDialog() {
@@ -131,7 +131,7 @@ public abstract class AbsChooseImageActivity extends BaseActivity implements UpF
         if(photoCount == 1) {
             onGetImage(path);
             if (isUpload) {
-                AbsChooseImageActivity.this.dialogShowLoading = DialogShowLoading.showDialog(AbsChooseImageActivity.this);
+                AbsChooseImageActivity.this.dialogShowLoading = DialogProgress.showDialog(AbsChooseImageActivity.this);
                 UpFileUtils.upImage(new File(path), AbsChooseImageActivity.this);
             }
         } else if(photos != null && !photos.isEmpty()){
@@ -144,7 +144,7 @@ public abstract class AbsChooseImageActivity extends BaseActivity implements UpF
             path = sb.toString();
             onGetImage(path);
             if (isUpload) {
-                AbsChooseImageActivity.this.dialogShowLoading = DialogShowLoading.showDialog(AbsChooseImageActivity.this);
+                AbsChooseImageActivity.this.dialogShowLoading = DialogProgress.showDialog(AbsChooseImageActivity.this);
                 UpFileUtils.upImages(photos, AbsChooseImageActivity.this);
             }
         } else {

+ 16 - 39
app/src/main/java/com/sheep/gamegroup/absBase/BaseActivity.java

@@ -1,11 +1,12 @@
 package com.sheep.gamegroup.absBase;
 
-import android.app.ProgressDialog;
 import android.os.Bundle;
 import android.support.annotation.Nullable;
 import android.support.v7.app.AppCompatActivity;
 import android.view.KeyEvent;
 
+import com.sheep.gamegroup.view.dialog.DialogLoading;
+
 import butterknife.ButterKnife;
 
 /**
@@ -14,7 +15,7 @@ import butterknife.ButterKnife;
 
 public abstract class BaseActivity extends AppCompatActivity {
 
-    protected ProgressDialog  mPd;
+    protected DialogLoading dialogLoading;
 
 
     @Override
@@ -26,51 +27,27 @@ public abstract class BaseActivity extends AppCompatActivity {
         initListener();
         initData();
     }
-
+    public boolean isShowing(){
+        return dialogLoading != null && dialogLoading.getAlertDialog() != null && dialogLoading.getAlertDialog().isShowing();
+    }
     public void  showProgress(){
-        try {
-            if(mPd!=null){
-                hideProgress();
-            }
-            mPd = new ProgressDialog(this);
-//        View view= LayoutInflater.from(this).inflate(R.layout.dialog_layout,null);
-//        mPd.setContentView(view);//自己定义布局
-            mPd.setMessage("数据加载中...");
-            mPd.setCancelable(true);//能否够被取消
-//        mPd.setProgressStyle(ProgressDialog.STYLE_SPINNER);//圆环风格
-            mPd.show();
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
+        hideProgress();
+        dialogLoading = DialogLoading.showDialog(this);
     }
     protected void  showProgress(boolean cancel){
-        try {
-            if(mPd!=null){
-                hideProgress();
-            }
-            mPd = new ProgressDialog(this);
-//        View view= LayoutInflater.from(this).inflate(R.layout.dialog_layout,null);
-//        mPd.setContentView(view);//自己定义布局
-            mPd.setMessage("数据加载中...");
-            mPd.setCancelable(cancel);//能否够被取消
-//        mPd.setProgressStyle(ProgressDialog.STYLE_SPINNER);//圆环风格
-            mPd.show();
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
+        hideProgress();
+        dialogLoading = DialogLoading.showDialog(this, cancel);
     }
 
 
     public void  hideProgress(){
-        this.runOnUiThread(new Runnable() {
-            @Override
-            public void run() {
-                if(mPd!=null){
-                    mPd.dismiss();
-                }
+        if(isShowing()){
+            try {
+                dialogLoading.getAlertDialog().dismiss();
+            } catch (Exception e) {
+                e.printStackTrace();
             }
-        });
-
+        }
     }
 
 

+ 6 - 1
app/src/main/java/com/sheep/gamegroup/helper/DownloadHelper.java

@@ -69,7 +69,12 @@ public class DownloadHelper {
 
     private DownloadTaskService mDownloadTaskService;
     private DownloadTarget downloadTarget;
-    //下载应用
+
+    /**
+     * @param activity
+     * @param task
+     *   //下载应用
+     */
     private void downloadApp(Activity activity, IDownload task) {
         switch (downLoadType){
             case DownloadTaskService.STATUS_INIT://可以下载

+ 0 - 3
app/src/main/java/com/sheep/gamegroup/model/util/SheepSubscriber.java

@@ -30,7 +30,6 @@ public abstract class SheepSubscriber<T> extends Subscriber<T> {
     @Override
     public void onStart() {
         super.onStart();
-        Log.i("tag","MySubscriber.onStart()");
         //接下来可以检查网络连接等操作
         if(context == null)
             context = SheepApp.mContext;
@@ -47,7 +46,6 @@ public abstract class SheepSubscriber<T> extends Subscriber<T> {
 
     @Override
     public void onError(Throwable e) {
-        Log.e("tag","MySubscriber.throwable ="+e.toString());
         try{
             if(e instanceof Exception){
                 //访问获得对应的Exception
@@ -102,6 +100,5 @@ public abstract class SheepSubscriber<T> extends Subscriber<T> {
 
     @Override
     public void onCompleted() {
-        Log.i("tag","MySubscriber.onComplete()");
     }
 }

+ 0 - 2
app/src/main/java/com/sheep/gamegroup/statistics/AppStatistics.java

@@ -55,12 +55,10 @@ public class AppStatistics {
                 .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
                     @Override
                     public void onError(BaseMessage baseMessage) {
-                        System.out.println("sendDataToServer onError-->>"+baseMessage.toString());
                     }
 
                     @Override
                     public void onNext(BaseMessage baseMessage) {
-                        System.out.println("sendDataToServer onNext");
                     }
                 });
     }

+ 15 - 11
app/src/main/java/com/sheep/gamegroup/util/CommonUtil.java

@@ -902,26 +902,30 @@ public class CommonUtil {
                     .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
                         @Override
                         public void onError(BaseMessage baseMessage) {
-                            action1.call(null);
+                            if(action1 != null)
+                                action1.call(null);
                         }
 
                         @Override
                         public void onNext(BaseMessage baseMessage) {
-                            if (name == null) {
-                                return;
-                            }
-                            JSONObject urlConfig = baseMessage.getData(JSONObject.class);
-                            if (urlConfig == null) {
-                                action1.call(null);
-                            } else {
-                                String url = urlConfig.getString(name);
-                                action1.call(url);
+                            if(action1 != null){
+                                if (name == null) {
+                                    return;
+                                }
+                                JSONObject urlConfig = baseMessage.getData(JSONObject.class);
+                                if (urlConfig == null) {
+                                    action1.call(null);
+                                } else {
+                                    String url = urlConfig.getString(name);
+                                    action1.call(url);
+                                }
                             }
                         }
                     });
         } else {
             String url = url_config.getString(name);
-            action1.call(url);
+            if(action1 != null)
+                action1.call(url);
         }
     }
 

+ 5 - 0
app/src/main/java/com/sheep/gamegroup/util/ListUtil.java

@@ -109,6 +109,11 @@ public class ListUtil {
         return removeList;
     }
 
+    public static <T> void set(List<T> list, T t, int position) {
+        if(hasIndex(list, position))
+            list.set(position, t);
+    }
+
     public static interface CallBack<I, R>{
         public R call(I i);
     }

+ 9 - 1
app/src/main/java/com/sheep/gamegroup/util/TestUtil.java

@@ -30,8 +30,10 @@ import com.sheep.gamegroup.usage.AppUsageManager;
 import com.sheep.gamegroup.view.activity.ActInstallApkList;
 import com.sheep.gamegroup.view.activity.ActSheepApkList;
 import com.sheep.gamegroup.view.activity.ActWeb;
+import com.sheep.gamegroup.view.dialog.DialogLoading;
 import com.sheep.gamegroup.view.dialog.DialogNewbieTaskList;
 import com.sheep.gamegroup.view.dialog.DialogShare;
+import com.sheep.gamegroup.view.dialog.DialogProgress;
 import com.sheep.jiuyan.samllsheep.BuildConfig;
 import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.SheepApp;
@@ -283,7 +285,7 @@ public class TestUtil {
      * @param activity
      */
     public static void test(final Activity activity) {
-        final String[] items = {"复制token","复制打点数据","查看截图","复制imsi","小米游戏","测试可用金额","测试定位信息","测试apk的渠道","幂动科技","游戏搜索",
+        final String[] items = {"复制token","复制打点数据","loading","progress","查看截图","复制imsi","小米游戏","测试可用金额","测试定位信息","测试apk的渠道","幂动科技","游戏搜索",
                 "游戏帐号","游戏代充","尝试开启第三方应用使用情况","测试代理页面","第三方应用使用情况",
                 "开启第三方应用使用情况","h5跳转","新手对话框","md5","空间不足提示框",
                 "显示已经安装应用列表","复制faq地址","复制代理地址","复制世界杯地址","任务游戏列表","世界杯活动","交通银行信用卡测试",
@@ -295,6 +297,12 @@ public class TestUtil {
                     @Override
                     public void onClick(DialogInterface dialog, int which) {
                         switch (items[which]) {
+                            case "loading":
+                                DialogLoading.showDialog(activity);
+                                break;
+                            case "progress":
+                                DialogProgress.showDialog(activity);
+                                break;
                             case "查看截图":
                                 File root = DataUtil.getInstance().getScreenShotsDir();
                                 if(!root.exists() || root.listFiles().length <= 0){

+ 17 - 5
app/src/main/java/com/sheep/gamegroup/util/ViewUtil.java

@@ -47,9 +47,12 @@ import com.sheep.gamegroup.view.dialog.DialogPayAccount;
 import com.sheep.gamegroup.view.dialog.DialogPayGame;
 import com.sheep.gamegroup.view.dialog.DialogShare;
 import com.sheep.jiuyan.samllsheep.R;
+import com.sheep.jiuyan.samllsheep.SheepApp;
 import com.sheep.jiuyan.samllsheep.utils.ClassFileHelper;
 import com.sheep.jiuyan.samllsheep.utils.G;
 
+import org.afinal.simplecache.ACache;
+
 import java.io.File;
 import java.io.FileNotFoundException;
 import java.io.FileOutputStream;
@@ -564,10 +567,17 @@ public class ViewUtil {
                     .create();
             TextView dialog_title = dialog_parent.findViewById(R.id.dialog_title);
             final View dialog_close = dialog_parent.findViewById(R.id.dialog_close);
-            LinearLayout dialog_center_ll = dialog_parent.findViewById(R.id.dialog_center_ll);
+            final LinearLayout dialog_center_ll = dialog_parent.findViewById(R.id.dialog_center_ll);
             View view = LayoutInflater.from(activity).inflate(R.layout.dialog_half_screen_ad, dialog_center_ll, true);
             setText(dialog_title, advertising.getName());
 
+            ACache aCache = ACache.get(SheepApp.getInstance());
+            String wh = aCache.getAsString(advertising.getDisplay_src());
+            if(!TextUtils.isEmpty(wh) && wh.contains(";")) {
+                String[] items = wh.split(";");
+                dialog_center_ll.setMinimumWidth(Integer.parseInt(items[0]));
+                dialog_center_ll.setMinimumHeight(Integer.parseInt(items[1]));
+            }
             dialog_center_ll.setPadding(0,activity.getResources().getDimensionPixelSize(R.dimen.content_padding_54),0,activity.getResources().getDimensionPixelSize(R.dimen.content_padding_15));
 
             ImageView ad_iv = view.findViewById(R.id.ad_iv);
@@ -665,6 +675,8 @@ public class ViewUtil {
 //                    if (finalTimer != null) {
 //                        finalTimer.clear();
 //                    }
+                    ACache aCache = ACache.get(SheepApp.getInstance());
+                    aCache.put(advertising.getDisplay_src(), String.format(Locale.CHINA, "%d;%d", dialog_center_ll.getWidth(), dialog_center_ll.getHeight()));
                     Jump2View.getInstance().tryShowReservation(activity);
                 }
             });
@@ -798,10 +810,10 @@ public class ViewUtil {
             }
             mPd = new ProgressDialog(activity);
 //        View view= LayoutInflater.from(this).inflate(R.layout.dialog_layout,null);
-//        mPd.setContentView(view);//自己定义布局
+//        dialogShowLoading.setContentView(view);//自己定义布局
             mPd.setMessage("数据加载中...");
             mPd.setCancelable(true);//能否够被取消
-//        mPd.setProgressStyle(ProgressDialog.STYLE_SPINNER);//圆环风格
+//        dialogShowLoading.setProgressStyle(ProgressDialog.STYLE_SPINNER);//圆环风格
             mPd.show();
         } catch (Exception e) {
             e.printStackTrace();
@@ -814,10 +826,10 @@ public class ViewUtil {
             }
             mPd = new ProgressDialog(activity);
 //        View view= LayoutInflater.from(this).inflate(R.layout.dialog_layout,null);
-//        mPd.setContentView(view);//自己定义布局
+//        dialogShowLoading.setContentView(view);//自己定义布局
             mPd.setMessage("数据加载中...");
             mPd.setCancelable(cancel);//能否够被取消
-//        mPd.setProgressStyle(ProgressDialog.STYLE_SPINNER);//圆环风格
+//        dialogShowLoading.setProgressStyle(ProgressDialog.STYLE_SPINNER);//圆环风格
             mPd.show();
         } catch (Exception e) {
             e.printStackTrace();

+ 1 - 0
app/src/main/java/com/sheep/gamegroup/view/activity/ActFindGame.java

@@ -671,5 +671,6 @@ public class ActFindGame extends BaseActivity {
     protected void onDestroy() {
         super.onDestroy();
         EventBus.getDefault().unregister(this);
+        Aria.download(this).unRegister();
     }
 }

+ 1 - 0
app/src/main/java/com/sheep/gamegroup/view/activity/ActFindInformation.java

@@ -430,6 +430,7 @@ public class ActFindInformation extends BaseActivity implements Action1<Integer>
     protected void onResume() {
         super.onResume();
         taskHelper.onResume();
+        Aria.download(this).unRegister();
     }
 
     @Override

+ 2 - 2
app/src/main/java/com/sheep/gamegroup/view/activity/AskGetMoneyAct.java

@@ -190,8 +190,8 @@ public class AskGetMoneyAct extends BaseUMActivity implements AskGetMoneyContrac
                     itemView.setVisibility(View.INVISIBLE);
                     return;
                 }
-                ViewUtil.setText(x_ask_top5_item_user, String.format(Locale.CHINA, "昵称\n%s\n邀请人数:%d", item.getNickname(), item.getSum_friend()));
-                ViewUtil.setText(x_ask_top5_item_money, String.format(Locale.CHINA, "%.0f", item.getSum_amount()));
+                ViewUtil.setText(x_ask_top5_item_user, String.format(Locale.CHINA, "昵称\n%s", item.getNickname()));
+                ViewUtil.setText(x_ask_top5_item_money, String.format(Locale.CHINA, "%d", item.getSum_friend()));
                 ViewUtil.setText(x_ask_top5_item_award, item.getPrize());
                 switch (position) {
                     case 1:

+ 1 - 2
app/src/main/java/com/sheep/gamegroup/view/activity/TaskDetailCreditCardAct.java

@@ -191,9 +191,8 @@ public class TaskDetailCreditCardAct extends AbsChooseImageActivity {
     }
 
     private void netTaskSchedule() {
-        if (mPd == null || !mPd.isShowing())
+        if (!isShowing())
             showProgress();
-
         getDetail();
     }
 

+ 6 - 19
app/src/main/java/com/sheep/gamegroup/view/adapter/TaskListItemAdp.java

@@ -12,6 +12,7 @@ import android.widget.TextView;
 
 import com.bumptech.glide.Glide;
 import com.bumptech.glide.request.RequestOptions;
+import com.kfzs.duanduan.utils.NumberFormatUtils;
 import com.sheep.gamegroup.model.entity.TaskAcceptedEty;
 import com.sheep.gamegroup.model.entity.TaskEty;
 import com.sheep.gamegroup.model.entity.TaskReleaseEty;
@@ -19,6 +20,7 @@ import com.sheep.gamegroup.presenter.TaskListPresenter;
 import com.sheep.gamegroup.util.Jump2View;
 import com.sheep.gamegroup.util.TestUtil;
 import com.sheep.gamegroup.util.TimeUtil;
+import com.sheep.gamegroup.util.ViewUtil;
 import com.sheep.jiuyan.samllsheep.R;
 
 import java.util.List;
@@ -79,35 +81,20 @@ public class TaskListItemAdp extends BaseAdapter {
         }
 
         final TaskAcceptedEty ety = (TaskAcceptedEty) getItem(position);
-        holder.name_tv.setText(ety.getRelease_task().getName()+"");
-        try {
-            holder.date_tv.setText(TimeUtil.getDate(TimeUtil.FORMAT, Long.valueOf(ety.getUpdate_time()))+"");
-        }catch (Exception e){
-            e.printStackTrace();
+        if(ety == null || ety.getRelease_task() == null || ety.getRelease_task().getTask() == null){
+            return convertView;
         }
+        ViewUtil.setText(holder.name_tv, ety.getRelease_task().getName());
+        ViewUtil.setText(holder.name_tv, TimeUtil.getDate(TimeUtil.FORMAT, NumberFormatUtils.parseLong(ety.getUpdate_time())));
         holder.price_tv.setText(returnValue(ety));
         convertView.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
-//                TaskEty task = ety.getRelease_task().getTask();
-//                task.setScreenshots(ety.getScreenshots());
-//
-//                TaskReleaseEty releaseTask = ety.getRelease_task();
-//                releaseTask.setAccepted_task_id(ety.getId());
-
                 Jump2View.getInstance().goTaskDetailViewFromTaskList((Activity) context, ety.getRelease_task_id());
             }
         });
         TestUtil.setDebugDownLoad(context, convertView, ety.getRelease_task().getTask());
         holder.detail_task_tv.setText(ety.getRemarks());
-//        holder.detail_task_tv.setOnClickListener(new View.OnClickListener() {
-//            @Override
-//            public void onClick(View v) {
-//                uploadImag(context);
-//                EventBus.getDefault().post(BigEvent.get().setEventTypes(EventTypes.TASK_AGAIN_UPLOAD_FILE)
-//                        .setData(ety));
-//            }
-//        });
         Glide.with(context)
                 .load(ety.getRelease_task().getTask().getIcon())
                 .apply(new RequestOptions().placeholder(R.mipmap.icon))

+ 5 - 7
app/src/main/java/com/sheep/gamegroup/view/adapter/expandadapter/AdpPayGameDialog.java

@@ -1,6 +1,5 @@
 package com.sheep.gamegroup.view.adapter.expandadapter;
 
-import android.content.Context;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
@@ -11,6 +10,7 @@ import android.widget.TextView;
 import com.bumptech.glide.Glide;
 import com.sheep.gamegroup.model.entity.RechargeEntity;
 import com.sheep.jiuyan.samllsheep.R;
+import com.sheep.jiuyan.samllsheep.SheepApp;
 
 import java.util.List;
 
@@ -21,11 +21,9 @@ import java.util.List;
 
 public class AdpPayGameDialog extends BaseAdapter {
     private List<RechargeEntity> list;
-    private Context context;
 
-    public AdpPayGameDialog(List<RechargeEntity> list, Context context) {
+    public AdpPayGameDialog(List<RechargeEntity> list) {
         this.list = list;
-        this.context = context;
     }
 
     @Override
@@ -52,7 +50,7 @@ public class AdpPayGameDialog extends BaseAdapter {
             holder = (ViewHolder) tag;
         }else {
             holder = new ViewHolder();
-            convertView = LayoutInflater.from(context).inflate(R.layout.adp_pay_game_dialog, null);
+            convertView = LayoutInflater.from(SheepApp.getInstance()).inflate(R.layout.adp_pay_game_dialog, null);
 
             holder.pay_game_dialog_item_tv = convertView.findViewById(R.id.pay_game_dialog_item_tv);
             holder.pay_game_dialog_item_img = convertView.findViewById(R.id.pay_game_dialog_item_img);
@@ -87,9 +85,9 @@ public class AdpPayGameDialog extends BaseAdapter {
     }
 
     private void setValue(int intRes, boolean flag, ImageView view, TextView textView){
-        Glide.with(context)
+        Glide.with(SheepApp.getInstance())
                 .load(intRes)
                 .into(view);
-        textView.setTextColor(flag ? context.getResources().getColor(R.color.community_blue_text) : context.getResources().getColor(R.color.black_444444));
+        textView.setTextColor(flag ? SheepApp.getInstance().getResources().getColor(R.color.community_blue_text) : SheepApp.getInstance().getResources().getColor(R.color.black_444444));
     }
 }

+ 13 - 4
app/src/main/java/com/sheep/gamegroup/view/dialog/DialogShowLoading.java

@@ -8,18 +8,27 @@ import android.widget.TextView;
 import com.kfzs.duanduan.utils.dlg.ViewFindUtils;
 import com.sheep.jiuyan.samllsheep.R;
 
-public class DialogShowLoading {
+/**
+ * 用于加载中对话框
+ * Created by realicing on 2018/08/09.
+ * realicing@sina.com
+ */
+public class DialogLoading {
     private TextView textView;
     private AlertDialog alertDialog;
 
-    public static DialogShowLoading showDialog(final Activity activity) {
-        DialogShowLoading dialogShowLoading= new DialogShowLoading();
-        View view = View.inflate(activity, R.layout.dialog_show_loading, null);
+    public static DialogLoading showDialog(final Activity activity) {
+        return showDialog(activity, true);
+    }
+    public static DialogLoading showDialog(Activity activity, boolean cancelable) {
+        DialogLoading dialogShowLoading= new DialogLoading();
+        View view = View.inflate(activity, R.layout.dialog_loading, null);
         TextView dialog_loading = ViewFindUtils.find(view, R.id.dialog_loading);
         AlertDialog mAlertDialog = new AlertDialog.Builder(activity, R.style.MyDialogActivityTheme)
                 .setView(view)
                 .create();
         dialogShowLoading.setAlertDialog(mAlertDialog);
+        mAlertDialog.setCancelable(cancelable);
         try {
             mAlertDialog.show();
         } catch (Exception e) {

+ 1 - 1
app/src/main/java/com/sheep/gamegroup/view/dialog/DialogPayGame.java

@@ -111,7 +111,7 @@ public class DialogPayGame {
         pay_game_show_price_tv.setText("你需要支付"+ 0 +"元");
         money_et = view.findViewById(R.id.money_et);
         pay_listview = view.findViewById(R.id.pay_listview);
-        adpPayGameDialog = new AdpPayGameDialog(list ,activity);
+        adpPayGameDialog = new AdpPayGameDialog(list);
         pay_listview.setAdapter(adpPayGameDialog);
 
         pay_listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {

+ 56 - 0
app/src/main/java/com/sheep/gamegroup/view/dialog/DialogProgress.java

@@ -0,0 +1,56 @@
+package com.sheep.gamegroup.view.dialog;
+
+import android.app.Activity;
+import android.support.v7.app.AlertDialog;
+import android.view.View;
+import android.widget.TextView;
+
+import com.kfzs.duanduan.utils.dlg.ViewFindUtils;
+import com.sheep.jiuyan.samllsheep.R;
+
+/**
+ * 用于百分比对话框(文字在图片中间)
+ * Created by realicing on 2018/08/09.
+ * realicing@sina.com
+ */
+public class DialogProgress {
+    private TextView textView;
+    private AlertDialog alertDialog;
+
+    public static DialogProgress showDialog(final Activity activity) {
+        return showDialog(activity, true);
+    }
+    public static DialogProgress showDialog(Activity activity, boolean cancelable) {
+        DialogProgress dialogShowLoading= new DialogProgress();
+        View view = View.inflate(activity, R.layout.dialog_progress, null);
+        TextView dialog_loading = ViewFindUtils.find(view, R.id.dialog_progress);
+        AlertDialog mAlertDialog = new AlertDialog.Builder(activity, R.style.MyDialogActivityTheme)
+                .setView(view)
+                .create();
+        mAlertDialog.setCancelable(cancelable);
+        dialogShowLoading.setAlertDialog(mAlertDialog);
+        try {
+            mAlertDialog.show();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        dialogShowLoading.setTextView(dialog_loading);
+        return dialogShowLoading;
+    }
+
+    public TextView getTextView() {
+        return textView;
+    }
+
+    public void setTextView(TextView textView) {
+        this.textView = textView;
+    }
+
+    public AlertDialog getAlertDialog() {
+        return alertDialog;
+    }
+
+    public void setAlertDialog(AlertDialog alertDialog) {
+        this.alertDialog = alertDialog;
+    }
+}

+ 16 - 24
app/src/main/java/com/sheep/jiuyan/samllsheep/base/BaseFragment.java

@@ -1,6 +1,5 @@
 package com.sheep.jiuyan.samllsheep.base;
 
-import android.app.ProgressDialog;
 import android.os.Bundle;
 import android.support.annotation.IdRes;
 import android.support.annotation.Nullable;
@@ -9,6 +8,8 @@ import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 
+import com.sheep.gamegroup.view.dialog.DialogLoading;
+
 /**
  * @ Created by Dlg
  * @ <p>TiTle:  BaseFragment</p>
@@ -25,40 +26,31 @@ public abstract class BaseFragment extends Fragment {
      */
     protected boolean mIsFirstInit = true;
 
-    protected ProgressDialog mPd;
+    protected DialogLoading dialogLoading;
 
 
 
     protected void  showProgress(){
-        if(mPd!=null){
-            hideProgress();
-        }
-        mPd = new ProgressDialog(getActivity());
-//        View view= LayoutInflater.from(this).inflate(R.layout.dialog_layout,null);
-//        mPd.setContentView(view);//自己定义布局
-        mPd.setMessage("数据加载中...");
-        mPd.setCancelable(true);//能否够被取消
-//        mPd.setProgressStyle(ProgressDialog.STYLE_SPINNER);//圆环风格
-        mPd.show();
+        hideProgress();
+        dialogLoading = DialogLoading.showDialog(getActivity());
     }
 
     protected void  showProgress(boolean cancel){
-        if(mPd!=null){
-            hideProgress();
-        }
-        mPd = new ProgressDialog(getActivity());
-//        View view= LayoutInflater.from(this).inflate(R.layout.dialog_layout,null);
-//        mPd.setContentView(view);//自己定义布局
-        mPd.setMessage("数据加载中...");
-        mPd.setCancelable(cancel);//能否够被取消
-//        mPd.setProgressStyle(ProgressDialog.STYLE_SPINNER);//圆环风格
-        mPd.show();
+        hideProgress();
+        dialogLoading = DialogLoading.showDialog(getActivity(), cancel);
     }
 
+    public boolean isShowing(){
+        return dialogLoading != null && dialogLoading.getAlertDialog() != null && dialogLoading.getAlertDialog().isShowing();
+    }
 
     protected void  hideProgress(){
-        if(mPd!=null){
-            mPd.dismiss();
+        if(isShowing()){
+            try {
+                dialogLoading.getAlertDialog().dismiss();
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
         }
 
     }

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

@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8"?>
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent">
+
+    <LinearLayout
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center"
+        android:gravity="center"
+        android:orientation="horizontal">
+
+        <com.github.ybq.android.spinkit.SpinKitView
+            style="@style/SpinKitView.Large.ThreeBounce"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            app:SpinKit_Color="@color/colorAccent" />
+
+        <TextView
+            android:id="@+id/dialog_loading"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginStart="@dimen/content_padding_10"
+            android:gravity="center"
+            android:text="@string/data_loading"
+            android:visibility="gone"
+            android:textColor="@color/theme_app_info_dark"
+            android:textSize="14sp" />
+    </LinearLayout>
+</FrameLayout>

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

@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent">
+
+    <RelativeLayout
+        android:layout_width="100dp"
+        android:layout_height="100dp"
+        android:layout_gravity="center"
+        android:orientation="vertical">
+
+        <com.github.ybq.android.spinkit.SpinKitView
+            style="@style/SpinKitView.Large.Circle"
+            android:layout_width="100dp"
+            android:layout_height="100dp"
+            android:layout_centerInParent="true"
+            app:SpinKit_Color="@color/colorAccent" />
+
+        <TextView
+            android:id="@+id/dialog_progress"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_centerInParent="true"
+            android:gravity="center"
+            android:text="0%"
+            android:textColor="@color/theme_app_info_dark"
+            android:textSize="20sp" />
+    </RelativeLayout>
+</FrameLayout>

+ 0 - 28
app/src/main/res/layout/dialog_show_loading.xml

@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent">
-
-        <RelativeLayout
-            android:layout_width="100dp"
-            android:layout_height="100dp"
-            android:layout_gravity="center"
-            android:orientation="vertical">
-
-            <ImageView
-                android:layout_width="100dp"
-                android:layout_height="100dp"
-                android:layout_centerInParent="true"
-                android:src="@drawable/loading_01"/>
-
-            <TextView
-                android:id="@+id/dialog_loading"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:textColor="@color/theme_app_info_dark"
-                android:layout_centerInParent="true"
-                android:textSize="20sp"
-                android:gravity="center"
-                android:text="0%"/>
-        </RelativeLayout>
-</FrameLayout>

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

@@ -16,7 +16,7 @@
 
         <RelativeLayout
             android:layout_width="22dp"
-            android:paddingTop="@dimen/content_padding_10"
+            android:paddingTop="20dp"
             android:layout_height="wrap_content">
 
             <ImageView

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

@@ -25,7 +25,7 @@
         android:singleLine="true"
         android:textSize="12sp"
         android:textColor="#ffffff"
-        android:text="已赚"/>
+        android:text="邀请人数"/>
     <TextView
         android:layout_width="0dp"
         android:layout_height="wrap_content"

+ 1 - 1
app/src/main/res/values/common.xml

@@ -3,7 +3,7 @@
     <!--APP的相关主要颜色值-->
     <color name="colorPrimary">@color/white_DEDEDE</color>
     <color name="colorPrimaryDark">@color/blue_FF53BBF2</color>
-    <color name="colorAccent">#FF842C</color>
+    <color name="colorAccent">#29d6fd</color>
     <!--APP中的文本颜色主要值-->
     <color name="black_text_deep">#333333</color>
     <color name="black_text_gray">#898989</color>

+ 1 - 0
app/src/main/res/values/str_network_strings.xml

@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <resources>
     <string name="coming_soon">敬请期待</string>
+    <string name="data_loading">数据加载中&#8230;</string>
     <string name="loading">加载中</string>
     <string name="loading_data">数据正在加载中,请稍候重试</string>
     <string name="service_data_error">数据配置中,请稍候再试</string>

+ 0 - 28
kfzslibrary/src/main/java/com/kfzs/libs/widget/rv/BaseRecyclerViewAdapter.java

@@ -1,28 +0,0 @@
-package com.kfzs.libs.widget.rv;
-
-import android.support.v7.widget.RecyclerView;
-
-/**
- * Created by Administrator on 2018/2/5 0005.
- */
-
-public abstract class BaseRecyclerViewAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>{
-
-    private boolean mHasHeader = false;
-
-    @Override
-    public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
-        int pos = mHasHeader ? position -1 : position;
-        onBindViewHolderWithHeader(holder,pos);
-    }
-
-    public void setHasHeader(boolean hasHeader) {
-        mHasHeader = hasHeader;
-    }
-
-    public boolean isHasHeader() {
-        return mHasHeader;
-    }
-
-    public abstract void onBindViewHolderWithHeader(RecyclerView.ViewHolder holder, int position);
-}

+ 0 - 276
view/src/main/java/com/kfzs/android/view/UXUtils.java

@@ -1,276 +0,0 @@
-package com.kfzs.android.view;
-
-import android.app.Activity;
-import android.app.ProgressDialog;
-import android.content.Context;
-import android.os.Handler;
-import android.os.Looper;
-import android.support.annotation.StringRes;
-import android.text.TextUtils;
-import android.util.Log;
-import android.widget.Toast;
-
-/**
- * UX Utils for Fast request default time is 3000 ms, you can set custom time and isCustomTime be true
- * <pre>
- *     sinlov
- *
- *     /\__/\
- *    /`    '\
- *  ≈≈≈ 0  0 ≈≈≈ Hello world!
- *    \  --  /
- *   /        \
- *  /          \
- * |            |
- *  \  ||  ||  /
- *   \_oo__oo_/≡≡≡≡≡≡≡≡o
- *
- * </pre>
- * Created by sinlov on 17/1/17.
- */
-public final class UXUtils {
-    public static boolean DEBUG = false;
-    public static boolean isShowDefaultUXMessage = true;
-    public static final long DEFAULT_TIME_SHOT = 3000;
-    private static long customTime = 5000;
-    private static String TAG = "UXUtils";
-    private static StringBuffer sb = new StringBuffer();
-
-    private static long lastClickTime;
-    private static long oneTime;
-
-    private static long twoTime;
-    private static String oldMsg;
-    private static Toast toast;
-    private static ProgressDialog pd;
-
-    public static void setIsShowDefaultUXMessage(boolean isShowDefaultUXMessage) {
-        UXUtils.isShowDefaultUXMessage = isShowDefaultUXMessage;
-    }
-
-    /**
-     * default time is 5000 ms
-     *
-     * @param customTime long
-     */
-    public static void setCustomTime(long customTime) {
-        UXUtils.customTime = customTime;
-    }
-
-    public static boolean fastRequest() {
-        return fastRequest(false);
-    }
-
-    public static boolean fastRequest(boolean isCustomTime) {
-        return fastRequest(isCustomTime, null, null);
-    }
-
-    public static boolean fastRequest(Context ctx) {
-        return fastRequest(false, ctx, null);
-    }
-
-    public static boolean fastRequest(Context ctx, String toastMsg) {
-        return fastRequest(false, ctx, toastMsg);
-    }
-
-    public static boolean fastRequest(boolean isCustomTime, Context ctx, String toastMsg) {
-        long checkTime = System.currentTimeMillis() - UXUtils.lastClickTime;
-        printMultiLog("fastRequest", "checkTime: " + checkTime);
-        long betweenTIme = isCustomTime ? customTime : DEFAULT_TIME_SHOT;
-        if (checkTime < betweenTIme) {
-            if (null != ctx) {
-                if (!TextUtils.isEmpty(toastMsg)) {
-                    showSingleToast(ctx.getApplicationContext(), toastMsg);
-                } else {
-                    if (isShowDefaultUXMessage) {
-                        showSingleToast(ctx.getApplicationContext(), R.string.toast_fast_request);
-                    }
-                }
-            }
-            printMultiLog("fastRequest", "true time: " + UXUtils.lastClickTime, "between: " + checkTime);
-            return true;
-        } else {
-            UXUtils.lastClickTime = System.currentTimeMillis();
-            printMultiLog("fastRequest", "false time: " + UXUtils.lastClickTime);
-            return false;
-        }
-    }
-
-    public static boolean fastRequestShowProgressDialog(Context ctx) {
-        return fastRequestShowProgressDialog(ctx, false);
-    }
-
-    public static boolean fastRequestShowProgressDialog(Context ctx, String msg) {
-        return fastRequestShowProgressDialog(ctx, msg, false);
-    }
-
-    public static boolean fastRequestShowProgressDialog(Context ctx, boolean isCustomTime) {
-        return fastRequestShowProgressDialog(ctx, null, isCustomTime);
-    }
-
-    public static boolean fastRequestShowProgressDialog(Context ctx, String msg, boolean isCustomTime) {
-        long checkTime = System.currentTimeMillis() - UXUtils.lastClickTime;
-        printMultiLog("fastRequestShowProgressDialog", "checkTime: " + checkTime);
-        long betweenTIme = isCustomTime ? customTime : DEFAULT_TIME_SHOT;
-        if (checkTime < betweenTIme) {
-            printMultiLog("fastRequestShowProgressDialog", "checkTime: " + checkTime, "betweenTime: " + betweenTIme);
-            try {
-                if (null != ctx) {
-                    if (pd == null) {
-                        pd = new ProgressDialog(ctx);
-                        pd.setProgressStyle(ProgressDialog.STYLE_SPINNER);
-                        if (TextUtils.isEmpty(msg)) {
-                            if (isShowDefaultUXMessage) {
-                                pd.setMessage(ctx.getString(R.string.dialog_fast_request));
-                            }
-                        } else {
-                            pd.setMessage(msg);
-                        }
-                        pd.setCancelable(false);
-                        pd.setCanceledOnTouchOutside(false);
-                        showProgressDialog2AutoClose(betweenTIme);
-                    } else if (pd.isShowing()) {
-                        showProgressDialog2AutoClose(betweenTIme);
-                    }
-                } else {
-                    printMultiLog("show fastRequestShowProgressDialog null context");
-                }
-            } catch (Exception e) {
-                printMultiLog("show fastRequestShowProgressDialog error");
-                e.printStackTrace();
-            }
-            return true;
-        } else {
-            UXUtils.lastClickTime = System.currentTimeMillis();
-            printMultiLog("fastRequestShowProgressDialog", "false time: " + UXUtils.lastClickTime);
-            return false;
-        }
-    }
-
-    /**
-     * this dialog must use {@link UXUtilsAdapter#unLock()} to close or in uxUtilsAdapter close
-     *
-     * @param act            {@link Activity}
-     * @param uxUtilsAdapter {@link UXUtilsAdapter}
-     */
-    public static void showProgressDialog(Activity act, UXUtilsAdapter uxUtilsAdapter) {
-        showProgressDialog(act, uxUtilsAdapter, null);
-    }
-
-    /**
-     * this dialog must use {@link UXUtilsAdapter#unLock()} to close or in uxUtilsAdapter close
-     *
-     * @param act            {@link Activity}
-     * @param uxUtilsAdapter {@link UXUtilsAdapter}
-     * @param msg            {@link String}
-     */
-    public static void showProgressDialog(Activity act, UXUtilsAdapter uxUtilsAdapter, String msg) {
-        try {
-            if (null != act) {
-                ProgressDialog touchPD = new ProgressDialog(act);
-                touchPD.setProgressStyle(ProgressDialog.STYLE_SPINNER);
-                if (TextUtils.isEmpty(msg)) {
-                    if (isShowDefaultUXMessage) {
-                        touchPD.setMessage(act.getString(R.string.dialog_fast_request));
-                    }
-                } else {
-                    touchPD.setMessage(msg);
-                }
-                touchPD.setCancelable(false);
-                touchPD.setCanceledOnTouchOutside(false);
-                touchPD.show();
-                uxUtilsAdapter.lock();
-                uxUtilsAdapter.setPd(touchPD);
-                uxUtilsAdapter.doProgressDialog(touchPD);
-            } else {
-                throw new NullPointerException("show showProgressDialog null Activity");
-            }
-        } catch (Exception e) {
-            Log.e(TAG, "You are use in error showProgressDialog, it can be OOM! please fix!", e);
-        }
-    }
-
-    private static void showProgressDialog2AutoClose(long betweenTIme) {
-        pd.show();
-        new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {
-            @Override
-            public void run() {
-                printMultiLog("fastRequestShowProgressDialog", "auto close start");
-                if (pd != null) {
-                    printMultiLog("fastRequestShowProgressDialog", "do auto close");
-                    pd.hide();
-                }
-                printMultiLog("fastRequestShowProgressDialog", "auto close end");
-            }
-        }, betweenTIme);
-    }
-
-    public static void showSingleToast(Context ctx, @StringRes int msgID) {
-        showSingleToast(ctx, msgID, 0);
-    }
-
-    public static void showSingleToast(Context ctx, @StringRes int msgID, int duration) {
-        String msg = ctx.getString(msgID);
-        int showDuration = duration <= Toast.LENGTH_SHORT ? Toast.LENGTH_LONG : Toast.LENGTH_SHORT;
-        if (null == toast) {
-            toast = Toast.makeText(ctx.getApplicationContext(), msgID, showDuration);
-            toast.show();
-            oneTime = System.currentTimeMillis();
-        } else {
-            twoTime = System.currentTimeMillis();
-            if (msg.equals(oldMsg)) {
-                if (twoTime - oneTime > showDuration) {
-                    toast.show();
-                }
-            } else {
-                oldMsg = msg;
-                toast.setText(msg);
-                toast.show();
-            }
-        }
-        oneTime = twoTime;
-    }
-
-    public static void showSingleToast(Context ctx, String msg) {
-        showSingleToast(ctx, msg, 0);
-    }
-
-    public static void showSingleToast(Context ctx, String msg, int duration) {
-        int showDuration = duration <= Toast.LENGTH_SHORT ? Toast.LENGTH_LONG : Toast.LENGTH_SHORT;
-        if (null == toast) {
-            toast = Toast.makeText(ctx.getApplicationContext(), msg, showDuration);
-            toast.show();
-            oneTime = System.currentTimeMillis();
-        } else {
-            twoTime = System.currentTimeMillis();
-            if (msg.equals(oldMsg)) {
-                if (twoTime - oneTime > showDuration) {
-                    toast.show();
-                }
-            } else {
-                oldMsg = msg;
-                toast.setText(msg);
-                toast.show();
-            }
-        }
-        oneTime = twoTime;
-    }
-
-    public static void printMultiLog(String... msg) {
-        if (msg != null && DEBUG) {
-            sb.setLength(0);
-            if (msg.length > 0) {
-                for (String aMsg : msg) {
-                    sb.append(aMsg);
-                    sb.append(" ");
-                }
-            } else {
-                sb.append("empty printMultiLog please check");
-            }
-            Log.d(TAG, sb.toString());
-        }
-    }
-
-    private UXUtils() {
-    }
-}