liujiangyao лет назад: 7
Родитель
Сommit
2e6f337ccb
28 измененных файлов с 599 добавлено и 140 удалено
  1. 0 1
      app/src/main/java/com/kfzs/duanduan/fragment/FgtFindChild.java
  2. 5 0
      app/src/main/java/com/kfzs/duanduan/mine/GiftpackListAdapter.java
  3. 32 0
      app/src/main/java/com/sheep/gamegroup/model/entity/GameEntity.java
  4. 10 0
      app/src/main/java/com/sheep/gamegroup/model/entity/PlayGameEntity.java
  5. 1 1
      app/src/main/java/com/sheep/gamegroup/model/entity/TaskReleaseEty.java
  6. 23 0
      app/src/main/java/com/sheep/gamegroup/util/CommonUtil.java
  7. 28 0
      app/src/main/java/com/sheep/gamegroup/util/ViewUtil.java
  8. 0 1
      app/src/main/java/com/sheep/gamegroup/view/activity/ActFindGame.java
  9. 0 1
      app/src/main/java/com/sheep/gamegroup/view/activity/ActFindInformation.java
  10. 43 27
      app/src/main/java/com/sheep/gamegroup/view/activity/ActPlayGameDetail.java
  11. 0 1
      app/src/main/java/com/sheep/gamegroup/view/activity/TaskDetailAct.java
  12. 20 2
      app/src/main/java/com/sheep/gamegroup/view/adapter/PlayGameItemAdapter.java
  13. 38 21
      app/src/main/java/com/sheep/gamegroup/view/fragment/FgtMyGame.java
  14. 1 1
      app/src/main/java/com/sheep/gamegroup/view/fragment/FgtPlaGameGift.java
  15. 15 13
      app/src/main/java/com/sheep/gamegroup/view/fragment/FgtPlayGame.java
  16. 41 1
      app/src/main/java/com/sheep/gamegroup/view/fragment/FgtPlayGameDetail.java
  17. 1 0
      app/src/main/java/org/afinal/simplecache/ApiKey.java
  18. 8 8
      app/src/main/res/drawable/shape_blue_stroke_rectangle_no_lb.xml
  19. 11 0
      app/src/main/res/drawable/shape_yellow_stroke_rectangle_no_lb.xml
  20. 55 16
      app/src/main/res/layout/act_play_game_detail_layout.xml
  21. 217 0
      app/src/main/res/layout/act_play_game_dtail.xml
  22. 1 1
      app/src/main/res/layout/fgt_personalcenter_item_center_one.xml
  23. 1 1
      app/src/main/res/layout/fgt_play_game.xml
  24. 12 0
      app/src/main/res/layout/game_tag_textview.xml
  25. 28 7
      app/src/main/res/layout/item_play_game_detail.xml
  26. 2 37
      app/src/main/res/layout/play_game_vertical_list_item.xml
  27. 1 0
      app/src/main/res/layout/user_label.xml
  28. 5 0
      app/src/main/res/values/common.xml

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

@@ -497,6 +497,5 @@ public class FgtFindChild extends BaseCompatFragment {
     public void onDestroy() {
         super.onDestroy();
         EventBus.getDefault().unregister(this);
-        Aria.download(this).unRegister();
     }
 }

+ 5 - 0
app/src/main/java/com/kfzs/duanduan/mine/GiftpackListAdapter.java

@@ -27,6 +27,11 @@ public class GiftpackListAdapter extends FragmentPagerAdapter {
         mTitles.add(title);
     }
 
+    public void clearData(){
+        mListFragment.clear();
+        mTitles.clear();
+    }
+
     @Override
     public Fragment getItem(int position) {
         return (Fragment) mListFragment.get(position);

+ 32 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/GameEntity.java

@@ -1,5 +1,9 @@
 package com.sheep.gamegroup.model.entity;
 
+import android.text.TextUtils;
+
+import com.kfzs.duanduan.utils.NumberFormatUtils;
+
 import java.io.Serializable;
 import java.util.List;
 
@@ -95,4 +99,32 @@ public class GameEntity implements Serializable{
     public void setStatus(int status) {
         this.status = status;
     }
+
+    /**
+     * 是有有礼包
+     * @return
+     */
+    public boolean isGift(){
+        return has_gift_bag != null && has_gift_bag.size() > 0;
+    }
+    /**
+     * 获取奖金的文本表示(这里保留两位有效数字,因为服务器可能返回这样的结果:0.6000000238418579)
+     * @return
+     */
+    public String getBonusText(){
+        if(release_task != null){
+            return NumberFormatUtils.retainMost2(release_task.getBonus());
+        }else {
+            return null;
+        }
+    }
+
+    /**
+     * 是否显示整个礼包和福利金额标签
+     * trur:不显示
+     */
+    public boolean isGiftAndBonus(){
+        return !isGift() && TextUtils.isEmpty(getBonusText());
+    }
+
 }

+ 10 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/PlayGameEntity.java

@@ -72,6 +72,16 @@ public class PlayGameEntity implements IDownload, Serializable {
     private long updated_at;//integer($int64)
     private String versions;//string版本号
 
+    private String game_tag;//游戏标签,可多选,逗号分割
+
+    public String getGame_tag() {
+        return game_tag;
+    }
+
+    public void setGame_tag(String game_tag) {
+        this.game_tag = game_tag;
+    }
+
     public int getId() {
         return Id;
     }

+ 1 - 1
app/src/main/java/com/sheep/gamegroup/model/entity/TaskReleaseEty.java

@@ -185,7 +185,7 @@ public class TaskReleaseEty implements Serializable{
     }
 
     public String getRelease_num() {
-        return release_num;
+        return TextUtils.isEmpty(release_num)?"0":release_num;
     }
 
     public void setRelease_num(String release_num) {

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

@@ -39,6 +39,7 @@ import com.sheep.gamegroup.model.entity.DialogConfig;
 import com.sheep.gamegroup.model.entity.Ext;
 import com.sheep.gamegroup.model.entity.FindApp;
 import com.sheep.gamegroup.model.entity.GameAccountEntity;
+import com.sheep.gamegroup.model.entity.GameEntity;
 import com.sheep.gamegroup.model.entity.HomeListEntity;
 import com.sheep.gamegroup.model.entity.NewbieTask;
 import com.sheep.gamegroup.model.entity.NewbieTaskRecord;
@@ -2007,4 +2008,26 @@ public class CommonUtil {
                 break;
         }
     }
+
+    /**
+     *tag 标签绘制
+     R.drawable.shape_blue_stroke_rectangle_no_lb
+     @param i -1:不限制 否者限制tag 个数
+     */
+    public void paintLineaLayout(Context activity, GameEntity gameEntity, LinearLayout ll_game_tag, int i, int color, int drawable){
+        String game_tag = gameEntity.getApp().getGame_tag();
+        if(!TextUtils.isEmpty(game_tag)){
+            ArrayList<String> gameTagList = ListUtil.emptyList();
+            ListUtil.addAll(gameTagList, game_tag.split(","));
+            ll_game_tag.removeAllViews();
+            for(int j=0;j<gameTagList.size();j++){
+                if(i == -1 || i > j){
+                    ll_game_tag.addView(ViewUtil.newInstance().paintView(activity, gameTagList.get(j), color, drawable));
+                }else {
+                    return;
+                }
+            }
+        }
+
+    }
 }

+ 28 - 0
app/src/main/java/com/sheep/gamegroup/util/ViewUtil.java

@@ -27,6 +27,7 @@ import android.text.Html;
 import android.text.TextUtils;
 import android.text.method.ScrollingMovementMethod;
 import android.util.DisplayMetrics;
+import android.util.TypedValue;
 import android.view.Display;
 import android.view.Gravity;
 import android.view.LayoutInflater;
@@ -1554,4 +1555,31 @@ public class ViewUtil {
         }
         return result;
     }
+
+    /**
+     * paint
+     * R.color.green
+     * R.color.yellow_text_light
+     * R.color.black_text_gray
+     *
+     android:textColor="#cc8e8e8e"
+     android:textSize="10sp"
+     R.drawable.shape_blue_stroke_rectangle_no_lb
+     */
+    public View paintView(Context context, String text, int color, int drawable){
+
+        View view = View.inflate(context, R.layout.game_tag_textview, null);
+        TextView textView = view.findViewById(R.id.user_label_tv);
+
+        textView.setText(text);
+        textView.setTextColor(color);
+        textView.setBackgroundResource(drawable);
+        textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 10);
+        int padding = textView.getContext().getResources().getDimensionPixelSize(R.dimen.content_padding_2);
+        textView.setPadding(2* padding, padding, 2 * padding, padding);
+        LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(textView.getLayoutParams());
+        lp.setMarginEnd(padding);
+
+        return view;
+    }
 }

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

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

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

@@ -638,7 +638,6 @@ public class ActFindInformation extends BaseActivity implements Action1<Integer>
     protected void onDestroy() {
         super.onDestroy();
         LogUtil.logI("释放资源");
-        Aria.download(this).unRegister();
         EventBus.getDefault().unregister(this);
         taskHelper.destroy();
         if (webView != null) {

+ 43 - 27
app/src/main/java/com/sheep/gamegroup/view/activity/ActPlayGameDetail.java

@@ -2,16 +2,12 @@ package com.sheep.gamegroup.view.activity;
 
 import android.app.Activity;
 import android.content.Intent;
-import android.os.Bundle;
-import android.os.Handler;
-import android.os.Message;
 import android.support.design.widget.AppBarLayout;
 import android.support.design.widget.TabLayout;
 import android.support.v4.view.ViewPager;
 import android.support.v7.widget.AppCompatRatingBar;
 import android.text.TextUtils;
 import android.view.View;
-import android.view.ViewGroup;
 import android.widget.ImageButton;
 import android.widget.ImageView;
 import android.widget.LinearLayout;
@@ -24,7 +20,7 @@ import com.arialyy.aria.core.download.DownloadTask;
 import com.kfzs.duanduan.event.BigEvent;
 import com.kfzs.duanduan.mine.GiftpackListAdapter;
 import com.kfzs.duanduan.services.DownloadTaskService;
-import com.kfzs.duanduan.utils.dlg.HelperUtils;
+import com.kfzs.duanduan.view.ViewPagerAutoHeigh;
 import com.sheep.gamegroup.absBase.BaseActivity;
 import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.GameEntity;
@@ -33,11 +29,12 @@ import com.sheep.gamegroup.model.util.SheepSubscriber;
 import com.sheep.gamegroup.util.CommonUtil;
 import com.sheep.gamegroup.util.DataUtil;
 import com.sheep.gamegroup.util.GlideImageLoader;
+import com.sheep.gamegroup.util.ListUtil;
 import com.sheep.gamegroup.util.TimeUtil;
 import com.sheep.gamegroup.util.ViewUtil;
 import com.sheep.gamegroup.view.fragment.FgtPlaGameGift;
 import com.sheep.gamegroup.view.fragment.FgtPlayGameDetail;
-import com.sheep.gamegroup.view.fragment.FgtPlayGameSon;
+import com.sheep.gamegroup.view.fragment.FgtTryMakeMoney;
 import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.SheepApp;
 import com.sheep.jiuyan.samllsheep.utils.G;
@@ -48,13 +45,12 @@ import org.afinal.simplecache.ApiKey;
 import org.greenrobot.eventbus.EventBus;
 import org.greenrobot.eventbus.Subscribe;
 
+import java.util.ArrayList;
 import java.util.HashMap;
-import java.util.List;
 import java.util.Locale;
 import java.util.Map;
 
 import butterknife.BindView;
-import butterknife.ButterKnife;
 import rx.android.schedulers.AndroidSchedulers;
 import rx.functions.Action1;
 import rx.schedulers.Schedulers;
@@ -69,10 +65,6 @@ import static android.content.Intent.ACTION_PACKAGE_REMOVED;
 public class ActPlayGameDetail extends BaseActivity implements Action1<Integer> {
     @BindView(R.id.appbar_act_game_details)
     AppBarLayout appbarActGameDetails;
-    @BindView(R.id.bottom_line_text)
-    TextView bottomLineText;
-    @BindView(R.id.bottom_line)
-    LinearLayout bottomLine;
     @BindView(R.id.status_height_view)
     View statusHeightView;
     @BindView(R.id.find_game_bar)
@@ -96,7 +88,7 @@ public class ActPlayGameDetail extends BaseActivity implements Action1<Integer>
     @BindView(R.id.find_game_down_tv)
     TextView find_game_down_tv;
     @BindView(R.id.viewpager_act_game_details)
-    ViewPager mViewPager;
+    ViewPagerAutoHeigh mViewPager;
     @BindView(R.id.tabLayout)
     TabLayout tabLayout;
     @BindView(R.id.welfare_gift_layout)
@@ -105,6 +97,8 @@ public class ActPlayGameDetail extends BaseActivity implements Action1<Integer>
     TextView welfare_tv;
     @BindView(R.id.gift_tv)
     TextView gift_tv;
+    @BindView(R.id.ll_game_tag)
+    LinearLayout ll_game_tag;
 
     private Activity activity;
     private int id;
@@ -133,6 +127,7 @@ public class ActPlayGameDetail extends BaseActivity implements Action1<Integer>
         EventBus.getDefault().register(this);
         Aria.download(this).register();
 
+        mAdapter = new GiftpackListAdapter(getSupportFragmentManager(), SheepApp.getInstance());
         txt_baseactivity_title.setVisibility(View.INVISIBLE);//不显示标题栏
 
         RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, 0);
@@ -174,12 +169,16 @@ public class ActPlayGameDetail extends BaseActivity implements Action1<Integer>
                 layoutParams2.leftMargin = Math.max(titleWidth + row + 2 * leftRow, (G.WIDTH - nameWidth) / 2 + verticalOffset);
                 layoutParams2.topMargin = Math.max(topRow2, getResources().getDimensionPixelSize(R.dimen.find_game_top2) + verticalOffset);
                 find_game_name_tv.setLayoutParams(layoutParams2);
+                //tag
+                RelativeLayout.LayoutParams layoutParams6 = (RelativeLayout.LayoutParams) ll_game_tag.getLayoutParams();
+                layoutParams6.topMargin = getResources().getDimensionPixelSize(R.dimen.find_game_top158) + verticalOffset;
+                ll_game_tag.setLayoutParams(layoutParams6);
                 //信息位置变化
                 RelativeLayout.LayoutParams layoutParams3 = (RelativeLayout.LayoutParams) find_game_info_tv.getLayoutParams();
                 int left1 = (G.WIDTH - infoWidth) / 2;
                 int left2 = titleWidth + row + 2 * leftRow;
                 layoutParams3.leftMargin = left1;//left2 > left1 ? Math.min(left2, left1 - verticalOffset) : Math.max(left2, left1 + verticalOffset);
-                layoutParams3.topMargin = /*Math.max(find_game_name_tv.getHeight() + 4 * topRow, */getResources().getDimensionPixelSize(R.dimen.find_game_top3) + verticalOffset/*)*/;
+                layoutParams3.topMargin = /*Math.max(find_game_name_tv.getHeight() + 4 * topRow, */getResources().getDimensionPixelSize(R.dimen.find_game_top190) + verticalOffset/*)*/;
                 find_game_info_tv.setLayoutParams(layoutParams3);
                 //下载按钮位置变化
                 RelativeLayout.LayoutParams layoutParams4 = (RelativeLayout.LayoutParams) welfare_gift_layout.getLayoutParams();
@@ -189,7 +188,6 @@ public class ActPlayGameDetail extends BaseActivity implements Action1<Integer>
                 //星级位置变化
                 RelativeLayout.LayoutParams layoutParams5 = (RelativeLayout.LayoutParams) find_game_xin.getLayoutParams();
                 layoutParams5.topMargin = getResources().getDimensionPixelSize(R.dimen.find_game_top210) + verticalOffset;
-                find_game_xin.setLayoutParams(layoutParams5);
                 if (willTop == topRow/2) {
                     if (mIsExpanded) {
 //                        txt_baseactivity_title.setVisibility(View.INVISIBLE);
@@ -210,22 +208,11 @@ public class ActPlayGameDetail extends BaseActivity implements Action1<Integer>
             }
         });
 
-        //viewpaper
-        initViewPaper();
         resetData();
 
         initData();
     }
 
-    private void initViewPaper() {
-        mAdapter = new GiftpackListAdapter(getSupportFragmentManager(), SheepApp.getInstance());
-        mAdapter.add(FgtPlayGameDetail.newInstance(gameEntity), "详情");
-        mAdapter.add(FgtPlaGameGift.newInstance(gameEntity), "礼包");
-        mViewPager.setAdapter(mAdapter);
-        tabLayout.addOnTabSelectedListener(new TabLayout.ViewPagerOnTabSelectedListener(mViewPager));
-        tabLayout.setupWithViewPager(mViewPager);
-        CommonUtil.getInstance().reflex(tabLayout, activity);
-    }
     private void resetData() {
         //游戏简介与下载
         ViewUtil.setText(find_game_name_tv);
@@ -274,6 +261,36 @@ public class ActPlayGameDetail extends BaseActivity implements Action1<Integer>
 
         updateView(this, gameEntity.getApp(), find_game_down_tv);
 
+        mAdapter.clearData();
+        mAdapter.add(FgtPlayGameDetail.newInstance(gameEntity), "详情");
+        //ViewPager
+        //welfare_gift_layout
+        if(gameEntity.isGiftAndBonus()){
+            welfare_gift_layout.setVisibility(View.GONE);
+        }else {
+            welfare_gift_layout.setVisibility(View.VISIBLE);
+            if(gameEntity.isGift()){
+                gift_tv.setVisibility(View.VISIBLE);
+                mAdapter.add(FgtPlaGameGift.newInstance(gameEntity), "礼包");
+            }else {
+                gift_tv.setVisibility(View.GONE);
+            }
+            if(TextUtils.isEmpty(gameEntity.getBonusText())){
+                welfare_tv.setVisibility(View.GONE);
+            }else {
+                welfare_tv.setVisibility(View.VISIBLE);
+                ViewUtil.setText(welfare_tv, String.format(Locale.CHINA, "+%s元", gameEntity.getBonusText()));
+            }
+        }
+
+        mViewPager.setAdapter(mAdapter);
+        tabLayout.addOnTabSelectedListener(new TabLayout.ViewPagerOnTabSelectedListener(mViewPager));
+        tabLayout.setupWithViewPager(mViewPager);
+        CommonUtil.getInstance().reflex(tabLayout, activity);
+
+        //tag 标签绘制
+        CommonUtil.getInstance().paintLineaLayout(activity, gameEntity, ll_game_tag, 4,R.color.txt_bule, R.drawable.shape_blue_stroke_rectangle_no_lb);
+
     }
 
     //更新按钮状态与添加点击事件
@@ -325,7 +342,6 @@ public class ActPlayGameDetail extends BaseActivity implements Action1<Integer>
     @Override
     protected void onDestroy() {
         super.onDestroy();
-        Aria.download(this).unRegister();
         EventBus.getDefault().unregister(this);
     }
     //获取任务对应的TextView来更新进度

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

@@ -1464,6 +1464,5 @@ public class TaskDetailAct extends AbsChooseImageActivity implements TaskDetailC
     protected void onDestroy() {
         super.onDestroy();
         CommonUtil.getInstance().cancelAllTimers(CommonUtil.getInstance().timerHashMap);
-        Aria.download(this).unRegister();
     }
 }

+ 20 - 2
app/src/main/java/com/sheep/gamegroup/view/adapter/PlayGameItemAdapter.java

@@ -2,12 +2,15 @@ package com.sheep.gamegroup.view.adapter;
 
 import android.app.Activity;
 import android.content.Context;
+import android.text.TextUtils;
 import android.view.View;
 import android.widget.ImageView;
+import android.widget.LinearLayout;
 import android.widget.TextView;
 
 import com.sheep.gamegroup.model.entity.GameEntity;
 import com.sheep.gamegroup.model.entity.PlayGameEntity;
+import com.sheep.gamegroup.util.CommonUtil;
 import com.sheep.gamegroup.util.GlideImageLoader;
 import com.sheep.gamegroup.util.Jump2View;
 import com.sheep.gamegroup.util.ViewHolder;
@@ -41,14 +44,29 @@ public class PlayGameItemAdapter extends AdbCommonRecycler<GameEntity>{
             }
         });
         View item_download_welfare_line = holder.itemView.findViewById(R.id.line_tv);
-        View detail_task_tv_center = holder.itemView.findViewById(R.id.detail_task_tv_center);
+        TextView detail_task_tv_center = holder.itemView.findViewById(R.id.detail_task_tv_center);
         TextView item_name_tv = holder.itemView.findViewById(R.id.item_name_tv);
         TextView item_date_tv = holder.itemView.findViewById(R.id.item_date_tv);
+        LinearLayout ll_game_tag = holder.itemView.findViewById(R.id.ll_game_tag);
 
         ViewUtil.setText(item_name_tv, gameEntity.getApp().getName());
         ViewUtil.setText(item_date_tv, gameEntity.getApp().getPackage_size()+"M");
         GlideImageLoader.setGameImage((ImageView) holder.itemView.findViewById(R.id.item_icon_iv), gameEntity.getApp().getIcon());
-
+        gameEntity.getApp().getFindAppHelper().updateDownloadTaskView((Activity) activity, gameEntity.getApp(), detail_task_tv_center);
         item_download_welfare_line.setVisibility(holder.getAdapterPosition() + 1 == getItemCount() ? View.GONE : View.VISIBLE);
+
+        //tag 标签绘制
+        ll_game_tag.removeAllViews();
+        if(gameEntity.isGift()){
+            ll_game_tag.addView(ViewUtil.newInstance().paintView(activity, "礼包", R.color.red_FD2D54, R.drawable.shape_red_stroke_rectangle_no_lb));
+        }else {
+        }
+        if(TextUtils.isEmpty(gameEntity.getBonusText())){
+        }else {
+            ll_game_tag.addView(ViewUtil.newInstance().paintView(activity, "福利", R.color.yellow_D3AF57, R.drawable.shape_yellow_stroke_rectangle_no_lb));
+        }
+        CommonUtil.getInstance().paintLineaLayout(activity, gameEntity, ll_game_tag, 2,R.color.txt_bule, R.drawable.shape_blue_stroke_rectangle_no_lb);
+
+
     }
 }

+ 38 - 21
app/src/main/java/com/sheep/gamegroup/view/fragment/FgtMyGame.java

@@ -5,6 +5,7 @@ import android.os.Bundle;
 import android.support.v4.widget.SwipeRefreshLayout;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
+import android.text.TextUtils;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
@@ -13,6 +14,7 @@ import android.widget.TextView;
 
 import com.arialyy.annotations.Download;
 import com.arialyy.aria.core.download.DownloadTask;
+import com.jcodecraeer.xrecyclerview.XRecyclerView;
 import com.kfzs.duanduan.utils.ApkUtils;
 import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.OrienteeringDetail;
@@ -22,6 +24,7 @@ import com.sheep.gamegroup.model.util.SheepSubscriber;
 import com.sheep.gamegroup.util.CommonUtil;
 import com.sheep.gamegroup.util.DataUtil;
 import com.sheep.gamegroup.util.ListUtil;
+import com.sheep.gamegroup.util.ViewUtil;
 import com.sheep.gamegroup.view.adapter.TryMakeMoneyAdp;
 import com.sheep.gamegroup.view.customview.SheepmSwipeRefreshLayout;
 import com.sheep.jiuyan.samllsheep.R;
@@ -52,16 +55,14 @@ public class FgtMyGame extends BaseFragment {
     @BindView(R.id.empty_view_msg)
     TextView txtListEmpty;
     @BindView(R.id.recyclerview)
-    RecyclerView recyclerview;
-    @BindView(R.id.refresh)
-    SheepmSwipeRefreshLayout refresh;
+    XRecyclerView recyclerview;
     @BindView(R.id.empty_view)
     View empty_view;
     Unbinder unbinder;
     private Activity activity;
     private TryMakeMoneyAdp tryMakeMoneyAdp;
     private int page = 1;//页数
-    private int per_page = 100;
+    private int per_page = 10;
     private List<OrienteeringDetail> list = ListUtil.emptyList();
     private int type = 0;
 
@@ -92,35 +93,32 @@ public class FgtMyGame extends BaseFragment {
         tryMakeMoneyAdp.add(RecyleObj.make(RecyleType.NONE, null));
         recyclerview.setAdapter(tryMakeMoneyAdp);
         initListener();
+        bottomLine = ViewUtil.setBottomLine(recyclerview);
 
     }
+    private View bottomLine;
 
     public void initListener() {
-        refresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
+        recyclerview.setLoadingListener(new XRecyclerView.LoadingListener() {
             @Override
             public void onRefresh() {
+                page = 1;
                 refreshData();
             }
-        });
-        recyclerview.addOnScrollListener(new RecyclerView.OnScrollListener() {
-            @Override
-            public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
-                super.onScrollStateChanged(recyclerView, newState);
-            }
 
             @Override
-            public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
-
-                int topRowVerticalPosition =
-                        (recyclerView == null || recyclerView.getChildCount() == 0) ? 0 : recyclerView.getChildAt(0).getTop();
-
-                refresh.setEnabled(topRowVerticalPosition >= 0);
+            public void onLoadMore() {
+                if(ListUtil.size(list) >= per_page*page){
+                    page += 1;
+                    refreshData();
+                }else {
+                    recyclerview.setNoMore(true);
+                }
             }
         });
     }
 
     private void initData() {
-        refresh.setRefreshing(true);
         List<OrienteeringDetail> newList = DataUtil.getInstance().getCacheList(ApiKey.my_games, OrienteeringDetail.class);
         if(!ListUtil.isEmpty(newList)) {
             ListUtil.addAll(list, newList);
@@ -147,9 +145,25 @@ public class FgtMyGame extends BaseFragment {
                     }
                 });
     }
+    private void notifyBottomLine(boolean noMore) {
+        if(bottomLine != null) {
+            int count = list.size();
+            bottomLine.setVisibility(count == 0 ? View.INVISIBLE : View.VISIBLE);
+            if(noMore) {
+                final boolean isCanScrollToPosition = count > 10;//页数大于一页才显示点击回到顶部
+                TextView bottom_line_text = bottomLine.findViewById(R.id.bottom_line_text);
+                bottom_line_text.setText(isCanScrollToPosition ? "我是有底线的,点击我回到顶部" : "我是有底线的");
+                bottomLine.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View view) {
+                        if (isCanScrollToPosition)
+                            recyclerview.scrollToPosition(0);
+                    }
+                });
+            }
+        }
+    }
     private void checkAndInitView() {
-        if(refresh == null)
-            refresh = findViewById(R.id.refresh);
         if(empty_view == null)
             empty_view = findViewById(R.id.empty_view);
     }
@@ -161,7 +175,10 @@ public class FgtMyGame extends BaseFragment {
             tryMakeMoneyAdp.add(RecyleObj.make(RecyleType.GAME_TASK, list),0);
         }
         tryMakeMoneyAdp.refreshAdapter();
-        refresh.setRefreshing(false);
+        recyclerview.refreshComplete();
+        recyclerview.loadMoreComplete();
+
+        notifyBottomLine(false);
     }
 
     @Override

+ 1 - 1
app/src/main/java/com/sheep/gamegroup/view/fragment/FgtPlaGameGift.java

@@ -77,7 +77,7 @@ public class FgtPlaGameGift extends BaseFragment {
 
                 TextView btn_tv = holder.getView(R.id.btn_tv);
 
-                if (giftBagApp.isReceived()){
+                if (!giftBagApp.isReceived()){
                     btn_tv.setText("领取");
 
                 }else {

+ 15 - 13
app/src/main/java/com/sheep/gamegroup/view/fragment/FgtPlayGame.java

@@ -77,10 +77,6 @@ public class FgtPlayGame extends BaseFragment {
     TabLayout indicator;
     @BindView(R.id.viewpager_act_game_details)
     ViewPager pager;
-    @BindView(R.id.bottom_line_text)
-    TextView bottomLineText;
-    @BindView(R.id.bottom_line)
-    LinearLayout bottomLine;
     @BindView(R.id.refresh)
     SwipeRefreshLayout refresh;
     @BindView(R.id.scrollView)
@@ -270,6 +266,19 @@ public class FgtPlayGame extends BaseFragment {
 
     private void initData(){
 
+        //轮播
+        List<SlideshowEty> cacheSlideshowEtyList = DataUtil.getInstance().getCacheList(ApiKey.slideshowGame, SlideshowEty.class);
+        if (ListUtil.isEmpty(cacheSlideshowEtyList)) {
+            banner.setVisibility(View.GONE);
+        } else {
+            for (SlideshowEty slideshowEty : cacheSlideshowEtyList) {
+                slideshowEty.setObjects(CommonUtil.getInstance().getValue(slideshowEty.getExt()));
+                slideshowEtyLists.add(slideshowEty);
+                slideshowTitleList.add(slideshowEty.getTitle());
+            }
+            bindBanner();
+        }
+
         SheepApp.getInstance().getNetComponent().getApiService().gameBanner(1)
                 .subscribeOn(Schedulers.io())
                 .observeOn(AndroidSchedulers.mainThread())
@@ -281,7 +290,7 @@ public class FgtPlayGame extends BaseFragment {
 
                     @Override
                     public void onNext(BaseMessage baseMessage) {
-                        boolean isNewData = DataUtil.getInstance().isNewData(ApiKey.slideshow);
+                        boolean isNewData = DataUtil.getInstance().isNewData(ApiKey.slideshowGame);
                         if (isNewData) {
                             List<SlideshowEty> slideshowEtyList = baseMessage.getDataList(SlideshowEty.class);
                             if (ListUtil.isEmpty(slideshowEtyList)) {
@@ -296,10 +305,6 @@ public class FgtPlayGame extends BaseFragment {
                                 }
                                 bindBanner();
                             }
-                        }else {
-                            if (ListUtil.isEmpty(slideshowEtyLists)) {
-                                banner.setVisibility(View.GONE);
-                            }
                         }
                         notifyDataSetChanged();
                     }
@@ -395,7 +400,7 @@ public class FgtPlayGame extends BaseFragment {
         }
     }
 
-    @OnClick({R.id.every_day_more_tv, R.id.recent_hot_more_tv,  R.id.bottom_line})
+    @OnClick({R.id.every_day_more_tv, R.id.recent_hot_more_tv})
     public void onViewClicked(View view) {
         switch (view.getId()) {
             case R.id.every_day_more_tv:
@@ -404,9 +409,6 @@ public class FgtPlayGame extends BaseFragment {
             case R.id.recent_hot_more_tv:
                 Jump2View.getInstance().goEverydayOrCurrentHotGame(activity, 1);
                 break;
-            case R.id.bottom_line://我是有底线的,双击我回到顶部
-                scrollView.fullScroll(NestedScrollView.FOCUS_UP);
-                break;
         }
     }
     @Subscribe

+ 41 - 1
app/src/main/java/com/sheep/gamegroup/view/fragment/FgtPlayGameDetail.java

@@ -7,12 +7,17 @@ import android.text.TextUtils;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
+import android.widget.ProgressBar;
+import android.widget.TextView;
 
 import com.sheep.gamegroup.helper.ImageListHelper;
 import com.sheep.gamegroup.model.entity.GameEntity;
+import com.sheep.gamegroup.model.entity.TaskDescEntity;
+import com.sheep.gamegroup.util.CommonUtil;
 import com.sheep.gamegroup.util.ListUtil;
 import com.sheep.gamegroup.util.MyListview;
 import com.sheep.gamegroup.util.ViewUtil;
+import com.sheep.gamegroup.view.adapter.ArrayAdapter;
 import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.base.BaseFragment;
 import com.tencent.smtt.sdk.WebView;
@@ -35,6 +40,10 @@ public class FgtPlayGameDetail extends BaseFragment {
     WebView find_game_info_wv;
     @BindView(R.id.item_detail_listview)
     MyListview item_detail_listview;
+    @BindView(R.id.progressBarHorizontal)
+    ProgressBar progressBarHorizontal;
+    @BindView(R.id.last_num_tv)
+    TextView last_num_tv;
     Unbinder unbinder;
 
     private ArrayList<String> pictureList = ListUtil.emptyList();
@@ -60,7 +69,7 @@ public class FgtPlayGameDetail extends BaseFragment {
         activity = getActivity();
         imageListHelper.initList(activity, find_game_list, pictureList);
 
-        if(gameEntity == null || gameEntity.getApp() == null)
+        if(gameEntity == null || gameEntity.getApp() == null || gameEntity.getRelease_task() == null)
             return;
 
         //游戏图片banner
@@ -74,6 +83,37 @@ public class FgtPlayGameDetail extends BaseFragment {
             find_game_list.setVisibility(View.GONE);
         }
         ViewUtil.loadDataWithBaseURL(find_game_info_wv, gameEntity.getApp().getIntro());
+
+        //奖励领取步骤
+        if(gameEntity.getRelease_task().getTask().getDescEntityList() != null && gameEntity.getRelease_task().getTask().getDescEntityList().size() > 0){
+            item_detail_listview.setAdapter(new ArrayAdapter<TaskDescEntity>(activity, R.layout.textview_layout, gameEntity.getRelease_task().getTask().getDescEntityList()){
+                @Override
+                public boolean convert(int position, View convertView, ViewGroup parent, TaskDescEntity item) {
+                    TaskDescEntity taskDescEntity = item;
+                    if(taskDescEntity == null){
+                        return true;
+                    }
+                    TextView textView = convertView.findViewById(R.id.textview);
+                    CommonUtil.getInstance()
+                            .bindDataTaskDetailSonStep(taskDescEntity, textView, position);
+                    return true;
+                }
+
+                @Override
+                public boolean areAllItemsEnabled() {
+                    return false;
+                }
+            });
+        }
+        int progress;
+        if(Integer.valueOf(gameEntity.getRelease_task().getRelease_num()) != 0){
+            progress = Integer.valueOf(gameEntity.getRelease_task().getLast_num()) / Integer.valueOf(gameEntity.getRelease_task().getRelease_num()) * 100;
+        }else {
+            progress = 0;
+        }
+        //福利剩余数量
+        progressBarHorizontal.incrementProgressBy(progress);
+        last_num_tv.setText(gameEntity.getRelease_task().getLastNumText());
     }
 
     @Override

+ 1 - 0
app/src/main/java/org/afinal/simplecache/ApiKey.java

@@ -93,5 +93,6 @@ public class ApiKey {
     public static String playGameDetail(int id){
         return "app/find?id="+id;
     }
+    public static final String slideshowGame = "app/game_banner?platform=1";
 
 }

+ 8 - 8
app/src/main/res/drawable/shape_blue_stroke_rectangle_no_lb.xml

@@ -1,11 +1,11 @@
 <?xml version="1.0" encoding="utf-8"?>
 <shape xmlns:android="http://schemas.android.com/apk/res/android"
-    android:shape="rectangle">
-    <corners
-        android:topLeftRadius="10dp"
-        android:topRightRadius="10dp"
-        android:bottomRightRadius="10dp"/>
-    <stroke
-        android:width="1px"
-        android:color="#4889FF" />
+android:shape="rectangle">
+<corners
+    android:topLeftRadius="10dp"
+    android:topRightRadius="10dp"
+    android:bottomRightRadius="10dp"/>
+<stroke
+    android:width="1px"
+    android:color="#4889FF" />
 </shape>

+ 11 - 0
app/src/main/res/drawable/shape_yellow_stroke_rectangle_no_lb.xml

@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    android:shape="rectangle">
+    <corners
+        android:topLeftRadius="10dp"
+        android:topRightRadius="10dp"
+        android:bottomRightRadius="10dp"/>
+    <stroke
+        android:width="1px"
+        android:color="#D3AF57" />
+</shape>

+ 55 - 16
app/src/main/res/layout/act_play_game_detail_layout.xml

@@ -3,7 +3,7 @@
     xmlns:app="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:background="@color/white_light">
+    android:background="@color/txt_white">
 
     <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
         xmlns:app="http://schemas.android.com/apk/res-auto"
@@ -14,12 +14,12 @@
             android:id="@+id/appbar_act_game_details"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:background="@color/white_light"
+            android:background="@color/txt_white"
             android:fitsSystemWindows="true">
 
             <LinearLayout
                 android:layout_width="match_parent"
-                android:layout_height="280dp"
+                android:layout_height="250dp"
                 android:gravity="center_horizontal"
                 android:orientation="vertical"
                 app:expandedTitleTextAppearance="@style/TextAppearance.Design.CollapsingToolbar.Expanded"
@@ -33,14 +33,41 @@
             android:fillViewport="false"
             app:layout_behavior="@string/appbar_scrolling_view_behavior">
 
+            <!--选项卡-->
+
             <LinearLayout
                 android:layout_width="match_parent"
-                android:layout_height="wrap_content"
+                android:layout_height="match_parent"
                 android:orientation="vertical">
-                <!--选项卡-->
-                <include layout="@layout/tablayout_viewpager_layout" />
-
-                <include layout="@layout/find_item_bottom"/>
+                <View
+                    android:id="@+id/find_information_line"
+                    android:layout_width="match_parent"
+                    android:layout_height="10dp"
+                    android:background="@color/theme_app_divider_color"
+                    android:layout_marginTop="@dimen/content_padding_10"
+                    app:layout_constraintTop_toBottomOf="@+id/find_information_time"/>
+                <LinearLayout
+                    android:layout_width="match_parent"
+                    android:layout_height="48dp"
+                    android:background="@color/white"
+                    android:orientation="vertical">
+
+                    <android.support.design.widget.TabLayout
+                        android:id="@+id/tabLayout"
+                        style="@style/style_tab"
+                        app:tabIndicatorHeight="2dp"
+                        android:layout_height="48dp"/>
+                    <include layout="@layout/line_1px_hor" />
+                </LinearLayout>
+
+
+                <com.kfzs.duanduan.view.ViewPagerAutoHeigh
+                    android:id="@+id/viewpager_act_game_details"
+                    android:layout_width="match_parent"
+                    android:layout_height="match_parent"
+                    android:background="@color/white"
+                    app:layout_behavior="@string/appbar_scrolling_view_behavior"
+                    android:layout_marginBottom="@dimen/content_padding_54"/>
             </LinearLayout>
         </android.support.v4.widget.NestedScrollView>
     </android.support.design.widget.CoordinatorLayout>
@@ -125,16 +152,18 @@
         android:id="@+id/ll_game_tag"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_marginTop="@dimen/find_game_top3"
+        android:layout_marginTop="@dimen/find_game_top158"
+        android:layout_centerHorizontal="true"
         android:orientation="horizontal"/>
 
     <TextView
         android:id="@+id/find_game_info_tv"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_marginTop="190dp"
+        android:layout_marginTop="@dimen/find_game_top190"
         android:layout_below="@+id/status_height_view"
         android:gravity="center"
+        android:layout_centerHorizontal="true"
         android:text="厂商:网易 | 版本号:7.9"
         android:textColor="@color/black_666666"
         android:textSize="12sp" />
@@ -165,7 +194,7 @@
             android:gravity="center"
             android:padding="@dimen/content_padding_3"
             android:background="@mipmap/welfare_gift_img_bg"
-            android:text="123"
+            android:text=""
             android:textSize="10sp"
             android:textColor="@color/white"/>
         <TextView
@@ -175,15 +204,25 @@
             android:gravity="center"
             android:padding="@dimen/content_padding_3"
             android:background="@mipmap/welfare_gift_img_bg"
-            android:text="123"
+            android:text="礼包"
             android:textSize="10sp"
             android:layout_marginStart="@dimen/content_padding_15"
             android:textColor="@color/white"/>
     </LinearLayout>
-    <TextView
-        android:id="@+id/find_game_down_tv"
-        style="@style/style_button"
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_gravity="bottom"
         android:layout_centerInParent="true"
         android:layout_alignParentBottom="true"
-        android:text="下载" />
+        android:background="@color/white"
+        android:orientation="vertical">
+
+        <include layout="@layout/line_1px_hor" />
+
+        <TextView
+            android:id="@+id/find_game_down_tv"
+            style="@style/style_button"
+            android:text="下载" />
+    </LinearLayout>
 </RelativeLayout>

+ 217 - 0
app/src/main/res/layout/act_play_game_dtail.xml

@@ -0,0 +1,217 @@
+<?xml version="1.0" encoding="utf-8"?>
+<com.flipboard.bottomsheet.BottomSheetLayout 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"
+    android:fitsSystemWindows="true">
+
+    <android.support.design.widget.CoordinatorLayout
+        android:layout_width="match_parent"
+        android:layout_height="match_parent">
+
+        <android.support.design.widget.AppBarLayout
+            android:id="@+id/appbar_act_game_details"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:background="@color/white_light"
+            android:fitsSystemWindows="true">
+            <!--标题栏-->
+
+
+            <android.support.design.widget.CollapsingToolbarLayout
+                android:id="@+id/toolbar_layout_act_game_details"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:fitsSystemWindows="true"
+                app:contentScrim="?attr/colorPrimary"
+                app:expandedTitleTextAppearance="@style/TextAppearance.Design.CollapsingToolbar.Expanded"
+                app:layout_scrollFlags="scroll|exitUntilCollapsed">
+
+                <!--大图-->
+                <RelativeLayout
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:background="@color/white"
+                    android:fitsSystemWindows="true"
+                    android:gravity="center_horizontal"
+                    app:layout_scrollFlags="scroll|enterAlways">
+
+                    <ImageView
+                        android:id="@+id/find_game_iv"
+                        android:layout_width="@dimen/find_icon_with"
+                        android:layout_height="@dimen/find_icon_with"
+                        android:layout_marginTop="@dimen/find_game_top"
+                        android:src="@drawable/loading_01" />
+
+                    <TextView
+                        android:id="@+id/find_game_name_tv"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:layout_marginTop="@dimen/find_game_top2"
+                        android:text="@string/app_name"
+                        android:textColor="@color/title"
+                        android:textSize="16sp" />
+
+                    <LinearLayout
+                        android:id="@+id/ll_game_tag"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:layout_marginTop="@dimen/find_game_top3"
+                        android:layout_centerHorizontal="true"
+                        android:orientation="horizontal"/>
+
+                    <TextView
+                        android:id="@+id/find_game_info_tv"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:layout_marginTop="190dp"
+                        android:gravity="center"
+                        android:layout_centerHorizontal="true"
+                        android:text="厂商:网易 | 版本号:7.9"
+                        android:textColor="@color/black_666666"
+                        android:textSize="12sp" />
+
+                    <android.support.v7.widget.AppCompatRatingBar
+                        android:id="@+id/find_game_xin"
+                        style="@style/style_rating_bar"
+                        android:layout_width="wrap_content"
+                        android:layout_marginTop="@dimen/find_game_top210"
+                        android:layout_centerHorizontal="true"
+                        android:isIndicator="true"
+                        android:numStars="5"
+                        android:rating="1.5"
+                        android:stepSize="0.5" />
+
+                    <LinearLayout
+                        android:id="@+id/welfare_gift_layout"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:layout_centerHorizontal="true"
+                        android:layout_marginTop="@dimen/find_game_top6"
+                        android:orientation="horizontal">
+                        <TextView
+                            android:id="@+id/welfare_tv"
+                            android:layout_width="wrap_content"
+                            android:layout_height="wrap_content"
+                            android:gravity="center"
+                            android:padding="@dimen/content_padding_3"
+                            android:background="@mipmap/welfare_gift_img_bg"
+                            android:text="123"
+                            android:textSize="10sp"
+                            android:textColor="@color/white"/>
+                        <TextView
+                            android:id="@+id/gift_tv"
+                            android:layout_width="wrap_content"
+                            android:layout_height="wrap_content"
+                            android:gravity="center"
+                            android:padding="@dimen/content_padding_3"
+                            android:background="@mipmap/welfare_gift_img_bg"
+                            android:text="礼包"
+                            android:textSize="10sp"
+                            android:layout_marginStart="@dimen/content_padding_15"
+                            android:textColor="@color/white"/>
+                    </LinearLayout>
+                </RelativeLayout>
+
+                <android.support.v7.widget.Toolbar
+                    android:id="@+id/toolbar_act_game_details"
+                    android:layout_width="match_parent"
+                    android:layout_height="?attr/actionBarSize"
+                    app:contentInsetStart="0dp"
+                    app:layout_collapseMode="pin"
+                    app:layout_scrollFlags="scroll|exitUntilCollapsed"
+                    app:title="Toolbar"
+                    app:titleTextColor="@color/white">
+
+                    <LinearLayout
+                        android:layout_width="match_parent"
+                        android:layout_height="?attr/actionBarSize"
+                        android:gravity="center_vertical"
+                        android:orientation="horizontal"
+                        android:paddingLeft="0dp">
+
+                        <ImageView
+                            android:id="@+id/img_baseactivity_title"
+                            android:layout_width="wrap_content"
+                            android:layout_height="match_parent"
+                            android:paddingEnd="@dimen/content_padding"
+                            android:paddingStart="@dimen/content_padding"
+                            android:scaleType="centerInside"
+                            android:src="@drawable/narrow_back_black" />
+
+                        <TextView
+                            android:id="@+id/txt_baseactivity_title"
+                            android:layout_width="0dp"
+                            android:layout_height="match_parent"
+                            android:layout_weight="1"
+                            android:ellipsize="end"
+                            android:gravity="center"
+                            android:text="游戏标题"
+                            android:textColor="@color/black_text_deep"
+                            android:textSize="@dimen/text_size_4"/>
+
+                        <ImageView
+                            android:id="@+id/ibtn_baseactivity_right"
+                            android:layout_width="wrap_content"
+                            android:layout_height="match_parent"
+                            android:paddingEnd="@dimen/content_padding"
+                            android:paddingStart="@dimen/content_padding"
+                            android:background="@color/translate"
+                            android:src="@mipmap/share"
+                            android:gravity="center"
+                            android:visibility="invisible"/>
+                    </LinearLayout>
+                </android.support.v7.widget.Toolbar>
+            </android.support.design.widget.CollapsingToolbarLayout>
+            <!--选项卡-->
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="48dp"
+                android:background="@color/white"
+                android:orientation="vertical">
+
+                <android.support.design.widget.TabLayout
+                    android:id="@+id/tabLayout"
+                    style="@style/style_tab"
+                    app:tabIndicatorHeight="2dp"
+                    android:layout_height="48dp"/>
+                <include layout="@layout/line_1px_hor" />
+            </LinearLayout>
+
+        </android.support.design.widget.AppBarLayout>
+
+        <android.support.v4.widget.NestedScrollView
+            android:id="@+id/nestedScrollView"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent"
+            android:layout_marginBottom="48dp"
+            android:background="@color/white"
+            android:fillViewport="false"
+            app:layout_behavior="@string/appbar_scrolling_view_behavior">
+
+            <com.kfzs.duanduan.view.ViewPagerAutoHeigh
+                android:id="@+id/viewpager_act_game_details"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content" />
+
+        </android.support.v4.widget.NestedScrollView>
+
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_gravity="bottom"
+            android:background="@color/white"
+            android:orientation="vertical">
+
+            <include layout="@layout/line_1px_hor" />
+
+            <TextView
+                android:id="@+id/find_game_down_tv"
+                style="@style/style_button"
+                android:layout_centerInParent="true"
+                android:layout_alignParentBottom="true"
+                android:text="下载" />
+        </LinearLayout>
+
+    </android.support.design.widget.CoordinatorLayout>
+</com.flipboard.bottomsheet.BottomSheetLayout>

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

@@ -47,7 +47,7 @@
     <LinearLayout
         android:id="@+id/order_layout"
         style="@style/style_item_container"
-        android:visibility="gone">
+        android:visibility="visible">
 
         <ImageView
             style="@style/style_item_img"

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

@@ -69,7 +69,7 @@
             <!--选项卡-->
             <include layout="@layout/tablayout_viewpager_layout" />
 
-            <include layout="@layout/find_item_bottom"/>
+            <!--<include layout="@layout/find_item_bottom"/>-->
         </LinearLayout>
 
     </android.support.v4.widget.NestedScrollView>

+ 12 - 0
app/src/main/res/layout/game_tag_textview.xml

@@ -0,0 +1,12 @@
+<?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="wrap_content"
+    android:orientation="horizontal">
+    <TextView
+        android:id="@+id/user_label_tv"
+        style="@style/style_check_stroke"
+        android:layout_marginRight="@dimen/content_padding_3"
+        android:text="小标签" />
+
+</LinearLayout>

+ 28 - 7
app/src/main/res/layout/item_play_game_detail.xml

@@ -13,7 +13,7 @@
 
         <LinearLayout
             android:layout_width="match_parent"
-            android:layout_height="match_parent"
+            android:layout_height="wrap_content"
             android:orientation="vertical"
             android:layout_margin="@dimen/dp_10"
             android:padding="@dimen/content_padding_20"
@@ -47,7 +47,7 @@
 
         <LinearLayout
             android:layout_width="match_parent"
-            android:layout_height="match_parent"
+            android:layout_height="wrap_content"
             android:orientation="vertical"
             android:layout_margin="@dimen/dp_10"
             android:padding="@dimen/content_padding_20"
@@ -78,6 +78,7 @@
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:layout_marginBottom="@dimen/content_padding_15"
+                android:layout_marginTop="@dimen/content_padding_15"
                 android:layout_marginStart="@dimen/content_padding_15"
                 android:divider="@null"
                 android:listSelector="@color/transparent"
@@ -86,7 +87,7 @@
 
         <LinearLayout
             android:layout_width="match_parent"
-            android:layout_height="match_parent"
+            android:layout_height="wrap_content"
             android:orientation="vertical"
             android:layout_margin="@dimen/dp_10"
             android:padding="@dimen/content_padding_20"
@@ -112,11 +113,31 @@
 
             </LinearLayout>
 
-            <TextView
-                android:layout_width="wrap_content"
+            <LinearLayout
+                android:layout_width="match_parent"
                 android:layout_height="wrap_content"
-                android:text="进度条"/>
-
+                android:orientation="horizontal">
+                <ProgressBar
+                    android:max="100"
+                    android:progress="50"
+                    android:id="@+id/progressBarHorizontal"
+                    style="?android:attr/progressBarStyleHorizontal"
+                    android:layout_width="0dp"
+                    android:layout_weight="1"
+                    android:layout_height="wrap_content"
+                    android:layout_gravity="center"
+                    android:layout_marginStart="@dimen/content_padding_5"
+                    android:layout_marginEnd="@dimen/content_padding_5"/>
+                <TextView
+                    android:id="@+id/last_num_tv"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:textColor="#333333"
+                    android:text=""
+                    android:layout_marginStart="@dimen/content_padding_5"
+                    android:textSize="14sp"
+                    android:layout_gravity="center"/>
+            </LinearLayout>
 
         </LinearLayout>
 </LinearLayout>

+ 2 - 37
app/src/main/res/layout/play_game_vertical_list_item.xml

@@ -96,47 +96,12 @@
                 android:layout_weight="1" />
 
             <LinearLayout
+                android:id="@+id/ll_game_tag"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:gravity="center_vertical"
-                android:orientation="horizontal">
-
-                <TextView
-                    android:id="@+id/item_num_tv"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:text=""
-                    android:textColor="#cc8e8e8e"
-                    android:textSize="10sp" />
+                android:orientation="horizontal"/>
 
-                <TextView
-                    android:id="@+id/item_num_tv1"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:layout_marginStart="@dimen/content_padding"
-                    android:text=""
-                    android:textColor="#cc8e8e8e"
-                    android:textSize="10sp"
-                    android:visibility="gone" />
-                <TextView
-                    android:id="@+id/item_num_tv2"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:layout_marginStart="@dimen/content_padding"
-                    android:text=""
-                    android:textColor="#cc8e8e8e"
-                    android:textSize="10sp"
-                    android:visibility="gone" />
-                <TextView
-                    android:id="@+id/item_num_tv3"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:layout_marginStart="@dimen/content_padding"
-                    android:text=""
-                    android:textColor="#cc8e8e8e"
-                    android:textSize="10sp"
-                    android:visibility="gone" />
-            </LinearLayout>
 
         </LinearLayout>
 

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

@@ -2,4 +2,5 @@
 <TextView xmlns:android="http://schemas.android.com/apk/res/android"
     android:id="@+id/user_label_tv"
     style="@style/style_check_stroke"
+    android:layout_marginRight="@dimen/content_padding_3"
     android:text="小标签" />

+ 5 - 0
app/src/main/res/values/common.xml

@@ -97,8 +97,13 @@
     <dimen name="find_icon_with">70dp</dimen>
     <dimen name="find_game_top">68dp</dimen>
     <dimen name="find_game_top2">144dp</dimen>
+    <dimen name="find_game_top158">158dp</dimen>
+    <dimen name="find_game_top165">165dp</dimen>
     <dimen name="find_game_top3">172dp</dimen>
+    <dimen name="find_game_top190">190dp</dimen>
+    <dimen name="find_game_top200">200dp</dimen>
     <dimen name="find_game_top210">210dp</dimen>
+    <dimen name="find_game_top220">220dp</dimen>
     <dimen name="find_game_top4">230dp</dimen>
     <dimen name="find_game_top5">228dp</dimen>
     <dimen name="find_game_top6">234dp</dimen>