Browse Source

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

zengjiebin 7 years ago
parent
commit
78eed5f7e2

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

@@ -2365,7 +2365,7 @@ public class CommonUtil {
      * 抢任务
      */
     public void robTask(final Action1<RobTask> action1) {
-        SheepApp.getInstance().getNetComponent().getApiService().getNewTask(SpUtils.getOrder("order"))
+        SheepApp.getInstance().getNetComponent().getApiService().getNewTask(SheepApp.getInstance().getOrder())
                 .subscribeOn(Schedulers.io())
                 .observeOn(AndroidSchedulers.mainThread())
                 .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.getInstance()) {

+ 50 - 47
app/src/main/java/com/sheep/gamegroup/util/ViewUtil.java

@@ -216,6 +216,7 @@ public class ViewUtil {
                     try {
                         mRobTask = robTask;
                         SpUtils.saveOrder("order", mRobTask.getOrder());
+                        SheepApp.getInstance().setOrder(mRobTask.getOrder());
                         tvDutyMoney.setText("+"+mRobTask.getM().getBonus() + "元");//设置任务奖励金额
                         tvTitel.setText(mRobTask.getM().getName()+"");//设置任务名字--getTask().getTask_name()
                         GlideImageLoader.setImage(ivIcon, mRobTask.getM().getTask().getIcon());//设置任务图标
@@ -470,58 +471,60 @@ public class ViewUtil {
 
     public static View setBottomLine(final XRecyclerView view_list, final Action1<String> action1) {
         View view = LayoutInflater.from(SheepApp.getInstance()).inflate(action1 != null ? R.layout.empty : R.layout.common_foot_view, null);
-        view_list.setFootView(view, new CustomFooterViewCallBack() {
-            @Override
-            public void onLoadingMore(View yourFooterView) {
-                if(action1 != null) {
-                    action1.call("onLoadingMore");
-                } else {
-                    TextView bottom_line_text = yourFooterView.findViewById(R.id.bottom_line_text);
-                    bottom_line_text.setText("羊羊努力加载中...");
+        if(view_list != null){
+            view_list.setFootView(view, new CustomFooterViewCallBack() {
+                @Override
+                public void onLoadingMore(View yourFooterView) {
+                    if(action1 != null) {
+                        action1.call("onLoadingMore");
+                    } else {
+                        TextView bottom_line_text = yourFooterView.findViewById(R.id.bottom_line_text);
+                        bottom_line_text.setText("羊羊努力加载中...");
+                    }
                 }
-            }
 
-            @Override
-            public void onLoadMoreComplete(View yourFooterView) {
-                if(action1 != null) {
-                    action1.call("onLoadMoreComplete");
-                } else {
-                    TextView bottom_line_text = yourFooterView.findViewById(R.id.bottom_line_text);
-                    bottom_line_text.setText(canScrollToTop() ? "加载完成,点击我回到顶部" : "加载完成");
-                    yourFooterView.setOnClickListener(new View.OnClickListener() {
-                        @Override
-                        public void onClick(View view) {
-                            if(canScrollToTop())
-                                view_list.scrollToPosition(0);
-                        }
-                    });
+                @Override
+                public void onLoadMoreComplete(View yourFooterView) {
+                    if(action1 != null) {
+                        action1.call("onLoadMoreComplete");
+                    } else {
+                        TextView bottom_line_text = yourFooterView.findViewById(R.id.bottom_line_text);
+                        bottom_line_text.setText(canScrollToTop() ? "加载完成,点击我回到顶部" : "加载完成");
+                        yourFooterView.setOnClickListener(new View.OnClickListener() {
+                            @Override
+                            public void onClick(View view) {
+                                if(canScrollToTop())
+                                    view_list.scrollToPosition(0);
+                            }
+                        });
+                    }
                 }
-            }
 
-            @Override
-            public void onSetNoMore(View yourFooterView, boolean noMore) {
-                if(action1 != null) {
-                    action1.call("onSetNoMore");
-                } else {
-                    yourFooterView.setVisibility(isEmpty() ? View.GONE : View.VISIBLE);
-                    TextView bottom_line_text = yourFooterView.findViewById(R.id.bottom_line_text);
-                    bottom_line_text.setText(canScrollToTop() ? "我是有底线的,点击我回到顶部" : "我是有底线的");
-                    yourFooterView.setOnClickListener(new View.OnClickListener() {
-                        @Override
-                        public void onClick(View view) {
-                            if(canScrollToTop())
-                                view_list.scrollToPosition(0);
-                        }
-                    });
+                @Override
+                public void onSetNoMore(View yourFooterView, boolean noMore) {
+                    if(action1 != null) {
+                        action1.call("onSetNoMore");
+                    } else {
+                        yourFooterView.setVisibility(isEmpty() ? View.GONE : View.VISIBLE);
+                        TextView bottom_line_text = yourFooterView.findViewById(R.id.bottom_line_text);
+                        bottom_line_text.setText(canScrollToTop() ? "我是有底线的,点击我回到顶部" : "我是有底线的");
+                        yourFooterView.setOnClickListener(new View.OnClickListener() {
+                            @Override
+                            public void onClick(View view) {
+                                if(canScrollToTop())
+                                    view_list.scrollToPosition(0);
+                            }
+                        });
+                    }
                 }
-            }
-            private boolean isEmpty(){
-                return view_list.getAdapter().getItemCount() == 0;
-            }
-            private boolean canScrollToTop(){
-                return view_list.getAdapter().getItemCount() > 10;
-            }
-        });
+                private boolean isEmpty(){
+                    return view_list.getAdapter().getItemCount() == 0;
+                }
+                private boolean canScrollToTop(){
+                    return view_list.getAdapter().getItemCount() > 10;
+                }
+            });
+        }
         return view;
     }
 

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

@@ -71,6 +71,7 @@ public class ActSetting extends BaseActivity {
                                 SysAppUtil.clearCache(new Action1<Object>() {
                                     @Override
                                     public void call(Object o) {
+                                        SheepApp.getInstance().setOrder(1);
                                         G.showToast("清理缓存完成");
                                         initCacheSize();
                                     }

+ 5 - 3
app/src/main/java/com/sheep/gamegroup/view/adapter/AdbMidong.java

@@ -10,6 +10,7 @@ import android.widget.RelativeLayout;
 import android.widget.TextView;
 
 import com.bumptech.glide.Glide;
+import com.kfzs.duanduan.utils.NumberFormatUtils;
 import com.mdad.sdk.mdsdk.AdManager;
 import com.mdad.sdk.mdsdk.common.AdData;
 import com.sheep.gamegroup.model.entity.AdDataSon;
@@ -75,7 +76,7 @@ public class AdbMidong extends AdbCommonRecycler<AdDataSon> {
         }
 
         if (!TextUtils.isEmpty(data.getTodayTask())) {
-            ((TextView) holder.itemView.findViewById(R.id.item_date_tv)).setText(Html.fromHtml(String.format(Locale.CHINA, "签到可获得<font color='#ff4a5f'>%s元</font>", data.getUsign_price_total())));
+            ((TextView) holder.itemView.findViewById(R.id.item_date_tv)).setText(Html.fromHtml(String.format(Locale.CHINA, "签到可获得<font color='#ff4a5f'>%s元</font>", data.getUprice())));
             tv_date.setText(data.getTodayTask());
             if(TimeUtil.newInstance().big2Today(data.getTodayTask(), TimeUtil.FORMAT_DD_LINE)){
                 task_top.setEnabled(true);
@@ -83,8 +84,9 @@ public class AdbMidong extends AdbCommonRecycler<AdDataSon> {
                 task_top.setEnabled(false);
             }
             task_top.setVisibility(View.VISIBLE);
-        } else {
-            ((TextView) holder.itemView.findViewById(R.id.item_date_tv)).setText(Html.fromHtml(String.format(Locale.CHINA, "安装可获得<font color='#ff4a5f'>%s元</font>", data.getUprice() + data.getUsign_price_total())));
+        } else {//(data.getUprice() + data.getUsign_price_total())
+            double price = data.getUprice() + data.getUsign_price_total();
+            ((TextView) holder.itemView.findViewById(R.id.item_date_tv)).setText(Html.fromHtml(String.format(Locale.CHINA, "安装可获得<font color='#ff4a5f'>%s元</font>", NumberFormatUtils.retainMost2(price))));
             task_top.setVisibility(View.GONE);
         }
 

+ 3 - 3
app/src/main/java/com/sheep/gamegroup/view/adapter/TaskdetailSonListviewAdp.java

@@ -272,7 +272,7 @@ public class TaskdetailSonListviewAdp extends BaseAdapter {
     /**
      * 1006 小程序 item 显示
      */
-    private void qrCodeView(View ar_code_layout, final View btn_task_item, View qr_code_notice_tv, View qr_code_iv){
+    private void qrCodeView(View ar_code_layout, final View btn_task_item, View qr_code_notice_tv, final View qr_code_iv){
         //task_type 1006
         if(taskReleaseEty == null || taskReleaseEty.getTask() == null || !taskReleaseEty.getTask().isApplet()){
             ar_code_layout.setVisibility(View.GONE);
@@ -287,14 +287,14 @@ public class TaskdetailSonListviewAdp extends BaseAdapter {
                     @Override
                     public void onClick(View v) {
                         QR_SAVE.onEvent();
-                        File file = ViewUtil.saveImage(btn_task_item, ClassFileHelper.DIR, System.currentTimeMillis() + ".jpg");
+                        File file = ViewUtil.saveImage(qr_code_iv, ClassFileHelper.DIR, System.currentTimeMillis() + ".jpg");
                         if (file != null) {
                             Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
                             Uri uri = Uri.fromFile(file);
                             intent.setData(uri);
                             context.sendBroadcast(intent); // 发送广播通知相册
                         } else {
-                            ViewUtil.sysSaveImage(btn_task_item, "小绵羊", "二维码展示");
+                            ViewUtil.sysSaveImage(qr_code_iv, "小绵羊", "二维码展示");
                         }
                         G.showToast("已保存");
                     }

+ 50 - 50
app/src/main/java/com/sheep/gamegroup/view/fragment/FgtTryMakeMoney.java

@@ -8,9 +8,17 @@ import android.text.TextUtils;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
+import android.widget.LinearLayout;
+import android.widget.RelativeLayout;
 import android.widget.TextView;
 
 import com.jcodecraeer.xrecyclerview.XRecyclerView;
+import com.scwang.smartrefresh.layout.SmartRefreshLayout;
+import com.scwang.smartrefresh.layout.api.RefreshLayout;
+import com.scwang.smartrefresh.layout.footer.ClassicsFooter;
+import com.scwang.smartrefresh.layout.header.ClassicsHeader;
+import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener;
+import com.scwang.smartrefresh.layout.listener.OnRefreshListener;
 import com.sheep.gamegroup.event.BigEvent;
 import com.sheep.gamegroup.event.EventTypes;
 import com.sheep.gamegroup.di.components.DaggerFgtTryMakeMoneyComponent;
@@ -57,10 +65,14 @@ import rx.functions.Action1;
  */
 
 public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContract.View {
-    @BindView(R.id.recyclerview)
-    XRecyclerView view_list;
     @BindView(R.id.empty_view)
     View empty_view;
+    @BindView(R.id.refreshLayout)
+    protected SmartRefreshLayout refreshLayout;
+    @BindView(R.id.recyclerview)
+    protected RecyclerView view_list;
+    @BindView(R.id.bottom_line)
+    protected LinearLayout bottomLine;
     Unbinder unbinder;
 
     @Inject
@@ -89,6 +101,8 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
             }
             unbinder = ButterKnife.bind(this, mView);
         }
+        if(refreshLayout == null)
+            refreshLayout = findViewById(R.id.refreshLayout);
     }
 
     private static final int LIST_COUNT = 3;//tryMakeMoneyAdp 总共有3条数据
@@ -112,9 +126,17 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
             tryMakeMoneyAdp.add(RecyleObj.make(RecyleType.BEGIN_TASK, releaseEtyListsBegin));
         tryMakeMoneyAdp.refreshAdapter();
         boolean showEmpty = acceptedEtyList.isEmpty() && releaseEtyLists.isEmpty() && releaseEtyListsBegin.isEmpty();
+        if(showEmpty){
+            refreshLayout.setVisibility(View.GONE);
+            bottomLine.setVisibility(View.GONE);
+        }else {
+
+            refreshLayout.setVisibility(View.VISIBLE);
+        }
         CommonUtil.getInstance().updateEmptyView(empty_view, showEmpty);
-        view_list.refreshComplete();
-        view_list.loadMoreComplete();
+
+        refreshLayout.finishRefresh(1000/*,false*/);//传入false表示加载失败
+        refreshLayout.finishLoadMore(1000/*,false*/);//传入false表示加载失败
         notifyBottomLine(false);
         if (isFromHome && isSelected)
             EventBus.getDefault().post(BigEvent.get().setEventTypes(EventTypes.FGT_SHEEP_REFRESH_H));
@@ -235,27 +257,33 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
         }
         view_list.setAdapter(tryMakeMoneyAdp);
 
-        bottomLine = ViewUtil.setBottomLine(view_list, isFromHome ? new Action1<String>() {
-            @Override
-            public void call(String msg) {
-                if (isFromHome && isSelected)
-                    EventBus.getDefault().post(BigEvent.get().setEventTypes(EventTypes.FGT_SHEEP_FOOT_VIEW_CALL_BACK).setData(msg));
-            }
-        } : null);
+
+        /**
+         * 刷新控件
+         */
+        refreshLayout.autoRefresh();
+        refreshLayout.setEnableRefresh(true);//是否启用下拉刷新功能
+        refreshLayout.setEnableLoadMore(true);//是否启用上拉加载功能
+        //设置 Header 为 贝塞尔雷达 样式
+        refreshLayout.setRefreshHeader(new ClassicsHeader(activity));
+        //设置 Footer 为 球脉冲 样式
+        refreshLayout.setRefreshFooter(new ClassicsFooter(activity).setDrawableSize(20));
+        refreshLayout.setEnableAutoLoadMore(true);
+        refreshLayout.setEnableLoadMore(true);
 
     }
-    private View bottomLine;
 
     public void initListener() {
-        view_list.setLoadingListener(new XRecyclerView.LoadingListener() {
+        refreshLayout.setOnRefreshListener(new OnRefreshListener() {
             @Override
-            public void onRefresh() {
+            public void onRefresh(RefreshLayout refreshlayout) {
+                refreshlayout.finishRefresh(1000/*,false*/);//传入false表示刷新失败
                 refreshData();
             }
-
+        });
+        refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() {
             @Override
-            public void onLoadMore() {
-/*
+            public void onLoadMore(final RefreshLayout refreshlayout) {
                 boolean noMoreRelease = true;
                 boolean noMoreReleaseBegin = true;
 
@@ -280,13 +308,14 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
                     }
                 }
                 if(noMoreRelease && noMoreReleaseBegin){
-                    view_list.setNoMore(true);
+                    refreshLayout.finishLoadMore(1000/*,false*/);//传入false表示加载失败
+                    refreshLayout.setNoMoreData(true);
                     noMore = true;
                     notifyBottomLine(true);
                     if (isFromHome)
                         EventBus.getDefault().post(BigEvent.get().setEventTypes(EventTypes.FGT_SHEEP_SET_BOTTOM_LINE));
                 }
-*/
+
             }
         });
         view_list.addOnScrollListener(new RecyclerView.OnScrollListener() {
@@ -294,36 +323,7 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
             public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
                 super.onScrollStateChanged(recyclerView, newState);
                 if (newState == RecyclerView.SCROLL_STATE_IDLE) {//滑动到了底部
-                    boolean noMoreRelease = true;
-                    boolean noMoreReleaseBegin = true;
-
-                    if(isGetRelease) {
-                        if (ListUtil.size(releaseEtyLists) >= per_page * releasePage) {
-                            releasePage += 1;
-                            noMoreRelease = false;
-                            //先加载缓存
-                            getReleaseFromACache(0);
-                            //再加载网络数据
-                            getReleaseFromNetWork(0);
-                        }
-                    }
-                    if(isGetReleaseBegin) {
-                        if (ListUtil.size(releaseEtyListsBegin) >= per_page * releaseBeginPage) {
-                            releaseBeginPage += 1;
-                            noMoreReleaseBegin = false;
-                            //先加载缓存
-                            getReleaseFromACache(1);
-                            //再加载网络数据
-                            getReleaseFromNetWork(1);
-                        }
-                    }
-                    if(noMoreRelease && noMoreReleaseBegin){
-                        view_list.setNoMore(true);
-                        noMore = true;
-                        notifyBottomLine(true);
-                        if (isFromHome)
-                            EventBus.getDefault().post(BigEvent.get().setEventTypes(EventTypes.FGT_SHEEP_SET_BOTTOM_LINE));
-                    }
+                    refreshLayout.autoLoadMore();
                 }
             }
         });
@@ -418,7 +418,7 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
         unbinder.unbind();
         // any time,when you finish your activity or fragment,call this below
         if(view_list != null){
-            view_list.destroy(); // this will totally release XR's memory
+//            view_list.destroyDrawingCache(); // this will totally release XR's memory
             view_list = null;
         }
     }

+ 9 - 0
app/src/main/java/com/sheep/jiuyan/samllsheep/SheepApp.java

@@ -73,6 +73,15 @@ public class SheepApp extends MultiDexApplication {
     private String gameCode;//游戏code
     private String gamePackgeName;
     private boolean gameFlag;
+    private int order = 1;
+
+    public int getOrder() {
+        return order;
+    }
+
+    public void setOrder(int order) {
+        this.order = order;
+    }
 
     public boolean isGameFlag() {
         return gameFlag;

+ 2 - 0
app/src/main/res/layout/adp_midong_item.xml

@@ -150,6 +150,8 @@
         <TextView
             android:id="@+id/task_type_tv"
             style="@style/style_button_find"
+            android:layout_width="wrap_content"
+            android:minWidth="@dimen/find_bt_with"
             android:text="安 装"
             android:visibility="visible"
             android:layout_marginTop="5dp"

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

@@ -157,7 +157,7 @@
         android:layout_marginEnd="22dp"
         android:layout_marginStart="22dp"
         android:textSize="10sp"
-        android:text="小提示:安装一周不卸载每日签到任务赚更多"
+        android:text="小提示:安装一周不卸载每日签到任务赚更多"
         android:layout_marginBottom="@dimen/content_padding_20"/>
 
     <TextView

+ 30 - 3
app/src/main/res/layout/fgt_try_makemoney_layout.xml

@@ -12,9 +12,36 @@
         android:layout_width="match_parent"
         android:layout_height="match_parent" />
 
-    <com.jcodecraeer.xrecyclerview.XRecyclerView
-        android:id="@+id/recyclerview"
+    <!--<com.jcodecraeer.xrecyclerview.XRecyclerView-->
+        <!--android:id="@+id/recyclerview"-->
+        <!--android:layout_width="match_parent"-->
+        <!--android:layout_height="match_parent"-->
+        <!--android:descendantFocusability="blocksDescendants" />-->
+
+    <LinearLayout
         android:layout_width="match_parent"
         android:layout_height="match_parent"
-        android:descendantFocusability="blocksDescendants" />
+        android:orientation="vertical">
+
+        <com.scwang.smartrefresh.layout.SmartRefreshLayout
+            android:id="@+id/refreshLayout"
+            android:layout_width="match_parent"
+            android:layout_height="0dp"
+            android:layout_weight="1">
+
+            <android.support.v7.widget.RecyclerView
+                android:id="@+id/recyclerview"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:background="#fff"
+                android:overScrollMode="never" />
+
+        </com.scwang.smartrefresh.layout.SmartRefreshLayout>
+
+        <include layout="@layout/find_item_bottom"
+            android:layout_below="@+id/refreshLayout"
+            android:layout_height="wrap_content"
+            android:layout_width="match_parent"/>
+
+    </LinearLayout>
 </RelativeLayout>

+ 1 - 0
app/src/main/res/layout/tablayout_viewpager_layout.xml

@@ -23,6 +23,7 @@
         android:id="@+id/viewpager_act_game_details"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
+        android:layout_marginTop="@dimen/content_padding_15"
         app:layout_behavior="@string/appbar_scrolling_view_behavior"
         android:minHeight="@dimen/view_size_100" />
 </LinearLayout>

+ 14 - 0
app/src/main/res/values/dd_styles.xml

@@ -45,6 +45,20 @@
         <item name="android:textSize">@dimen/text_size_12</item>
     </style>
 
+    <style name="style_button_find_midong">
+        <item name="android:layout_width">wrap_content</item>
+        <item name="android:minWidth">@dimen/find_bt_with</item>
+        <item name="android:layout_height">wrap_content</item>
+        <item name="android:background">@drawable/selector_button_full_main</item>
+        <item name="android:gravity">center</item>
+        <item name="android:paddingBottom">4dp</item>
+        <item name="android:paddingTop">4dp</item>
+        <item name="android:paddingLeft">2dp</item>
+        <item name="android:paddingRight">2dp</item>
+        <item name="android:textColor">@color/btn_color_main</item>
+        <item name="android:textSize">@dimen/text_size_12</item>
+    </style>
+
     <style name="style_button_find2">
         <item name="android:layout_width">@dimen/find_bt_with</item>
         <item name="android:layout_height">wrap_content</item>