|
@@ -3,6 +3,8 @@ package com.sheep.gamegroup.view.fragment;
|
|
|
import android.app.Activity;
|
|
import android.app.Activity;
|
|
|
import android.content.Context;
|
|
import android.content.Context;
|
|
|
import android.os.Bundle;
|
|
import android.os.Bundle;
|
|
|
|
|
+import android.os.Handler;
|
|
|
|
|
+import android.os.Message;
|
|
|
import android.support.design.widget.TabLayout;
|
|
import android.support.design.widget.TabLayout;
|
|
|
import android.support.v4.view.ViewPager;
|
|
import android.support.v4.view.ViewPager;
|
|
|
import android.support.v4.widget.NestedScrollView;
|
|
import android.support.v4.widget.NestedScrollView;
|
|
@@ -21,9 +23,8 @@ import com.bumptech.glide.request.RequestOptions;
|
|
|
import com.kfzs.duanduan.mine.GiftpackListAdapter;
|
|
import com.kfzs.duanduan.mine.GiftpackListAdapter;
|
|
|
import com.sheep.gamegroup.model.entity.BaseMessage;
|
|
import com.sheep.gamegroup.model.entity.BaseMessage;
|
|
|
import com.sheep.gamegroup.model.entity.FindTag;
|
|
import com.sheep.gamegroup.model.entity.FindTag;
|
|
|
-import com.sheep.gamegroup.model.entity.PlayGameEntity;
|
|
|
|
|
|
|
+import com.sheep.gamegroup.model.entity.GameEntity;
|
|
|
import com.sheep.gamegroup.model.entity.SlideshowEty;
|
|
import com.sheep.gamegroup.model.entity.SlideshowEty;
|
|
|
-import com.sheep.gamegroup.model.entity.Welfare;
|
|
|
|
|
import com.sheep.gamegroup.model.util.SheepSubscriber;
|
|
import com.sheep.gamegroup.model.util.SheepSubscriber;
|
|
|
import com.sheep.gamegroup.util.CommonUtil;
|
|
import com.sheep.gamegroup.util.CommonUtil;
|
|
|
import com.sheep.gamegroup.util.DataUtil;
|
|
import com.sheep.gamegroup.util.DataUtil;
|
|
@@ -54,8 +55,6 @@ import butterknife.Unbinder;
|
|
|
import rx.android.schedulers.AndroidSchedulers;
|
|
import rx.android.schedulers.AndroidSchedulers;
|
|
|
import rx.schedulers.Schedulers;
|
|
import rx.schedulers.Schedulers;
|
|
|
|
|
|
|
|
-import static com.sheep.gamegroup.util.UMConfigUtils.Event.FIND_TAG;
|
|
|
|
|
-
|
|
|
|
|
/**
|
|
/**
|
|
|
* Created by ljy on 2018/9/3.
|
|
* Created by ljy on 2018/9/3.
|
|
|
*/
|
|
*/
|
|
@@ -85,15 +84,37 @@ public class FgtPlayGame extends BaseFragment {
|
|
|
NestedScrollView scrollView;
|
|
NestedScrollView scrollView;
|
|
|
Unbinder unbinder;
|
|
Unbinder unbinder;
|
|
|
|
|
|
|
|
|
|
+ public static final int WHAT_UPDATE_VP_HEIGHT = 1;//刷新viewpager高度
|
|
|
private Activity activity;
|
|
private Activity activity;
|
|
|
- private List<PlayGameEntity> everyDayPlayListData = new ArrayList<>();
|
|
|
|
|
- private List<PlayGameEntity> hotListData = new ArrayList<>();
|
|
|
|
|
|
|
+ private List<GameEntity> everyDayPlayListData = new ArrayList<>();
|
|
|
|
|
+ private List<GameEntity> hotListData = new ArrayList<>();
|
|
|
|
|
|
|
|
private List<SlideshowEty> slideshowEtyLists = new ArrayList<>();
|
|
private List<SlideshowEty> slideshowEtyLists = new ArrayList<>();
|
|
|
private List<String> slideshowTitleList = new ArrayList<>();
|
|
private List<String> slideshowTitleList = new ArrayList<>();
|
|
|
|
|
|
|
|
private List<FindTag> list = ListUtil.emptyList();
|
|
private List<FindTag> list = ListUtil.emptyList();
|
|
|
private GiftpackListAdapter mAdapter;
|
|
private GiftpackListAdapter mAdapter;
|
|
|
|
|
+ private int curPosition = 0;
|
|
|
|
|
+
|
|
|
|
|
+ Handler mHandler = new Handler(){
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public void handleMessage(Message msg) {
|
|
|
|
|
+ super.handleMessage(msg);
|
|
|
|
|
+ switch (msg.what) {
|
|
|
|
|
+ case WHAT_UPDATE_VP_HEIGHT:
|
|
|
|
|
+ FgtPlayGameSon item = (FgtPlayGameSon) mAdapter.getItem(curPosition);
|
|
|
|
|
+ if (pager == null || item == null) {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ int count = item.getDataCount();
|
|
|
|
|
+ item.setNoFresh();
|
|
|
|
|
+ ViewGroup.LayoutParams params = pager.getLayoutParams();
|
|
|
|
|
+ params.height = count == 0 ? G.HEIGHT / 2 : (count * getResources().getDimensionPixelSize(R.dimen.content_padding_96) + getResources().getDimensionPixelSize(R.dimen.content_padding));
|
|
|
|
|
+ pager.setLayoutParams(params);
|
|
|
|
|
+ break;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ };
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public int getLayoutId() {
|
|
public int getLayoutId() {
|
|
@@ -115,22 +136,22 @@ public class FgtPlayGame extends BaseFragment {
|
|
|
everyDayPlayList.setHasFixedSize(true);
|
|
everyDayPlayList.setHasFixedSize(true);
|
|
|
everyDayPlayList.setNestedScrollingEnabled(false);
|
|
everyDayPlayList.setNestedScrollingEnabled(false);
|
|
|
everyDayPlayList.setLayoutManager(playHotManager);
|
|
everyDayPlayList.setLayoutManager(playHotManager);
|
|
|
- everyDayPlayList.setAdapter(new AdbCommonRecycler<PlayGameEntity>(SheepApp.getInstance(), everyDayPlayListData) {
|
|
|
|
|
|
|
+ everyDayPlayList.setAdapter(new AdbCommonRecycler<GameEntity>(SheepApp.getInstance(), everyDayPlayListData) {
|
|
|
@Override
|
|
@Override
|
|
|
public int getViewIdByType(int type) {
|
|
public int getViewIdByType(int type) {
|
|
|
return R.layout.item_hot_welfare;
|
|
return R.layout.item_hot_welfare;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
- public void convert(ViewHolder holder, PlayGameEntity welfareCenter) {
|
|
|
|
|
- ImageView item_hot_welfare_iv = holder.getView(R.id.item_hot_welfare_iv);
|
|
|
|
|
- TextView item_hot_welfare_tv = holder.getView(R.id.item_hot_welfare_tv);
|
|
|
|
|
|
|
+ public void convert(ViewHolder holder, GameEntity welfareCenter) {
|
|
|
|
|
+ ImageView item_hot_welfare_iv = holder.itemView.findViewById(R.id.item_hot_welfare_iv);
|
|
|
|
|
+ TextView item_hot_welfare_tv = holder.itemView.findViewById(R.id.item_hot_welfare_tv);
|
|
|
if(welfareCenter == null){
|
|
if(welfareCenter == null){
|
|
|
ViewUtil.setDefaultText(item_hot_welfare_tv);
|
|
ViewUtil.setDefaultText(item_hot_welfare_tv);
|
|
|
} else {
|
|
} else {
|
|
|
//TODO 加载数据
|
|
//TODO 加载数据
|
|
|
- ViewUtil.setText(item_hot_welfare_tv, welfareCenter.getName());
|
|
|
|
|
- GlideImageLoader.setImage(item_hot_welfare_iv, welfareCenter.getIcon());
|
|
|
|
|
|
|
+ ViewUtil.setText(item_hot_welfare_tv, welfareCenter.getApp().getName());
|
|
|
|
|
+ GlideImageLoader.setImage(item_hot_welfare_iv, welfareCenter.getApp().getIcon());
|
|
|
onClickToPlayGameDetail(holder.itemView, welfareCenter);
|
|
onClickToPlayGameDetail(holder.itemView, welfareCenter);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -140,22 +161,22 @@ public class FgtPlayGame extends BaseFragment {
|
|
|
recentHoeList.setHasFixedSize(true);
|
|
recentHoeList.setHasFixedSize(true);
|
|
|
recentHoeList.setNestedScrollingEnabled(false);
|
|
recentHoeList.setNestedScrollingEnabled(false);
|
|
|
recentHoeList.setLayoutManager(hotManager);
|
|
recentHoeList.setLayoutManager(hotManager);
|
|
|
- everyDayPlayList.setAdapter(new AdbCommonRecycler<PlayGameEntity>(SheepApp.getInstance(), hotListData) {
|
|
|
|
|
|
|
+ recentHoeList.setAdapter(new AdbCommonRecycler<GameEntity>(SheepApp.getInstance(), hotListData) {
|
|
|
@Override
|
|
@Override
|
|
|
public int getViewIdByType(int type) {
|
|
public int getViewIdByType(int type) {
|
|
|
return R.layout.item_hot_welfare;
|
|
return R.layout.item_hot_welfare;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
- public void convert(ViewHolder holder, PlayGameEntity welfareCenter) {
|
|
|
|
|
- ImageView item_hot_welfare_iv = holder.getView(R.id.item_hot_welfare_iv);
|
|
|
|
|
- TextView item_hot_welfare_tv = holder.getView(R.id.item_hot_welfare_tv);
|
|
|
|
|
|
|
+ public void convert(ViewHolder holder, GameEntity welfareCenter) {
|
|
|
|
|
+ ImageView item_hot_welfare_iv = holder.itemView.findViewById(R.id.item_hot_welfare_iv);
|
|
|
|
|
+ TextView item_hot_welfare_tv = holder.itemView.findViewById(R.id.item_hot_welfare_tv);
|
|
|
if(welfareCenter == null){
|
|
if(welfareCenter == null){
|
|
|
ViewUtil.setDefaultText(item_hot_welfare_tv);
|
|
ViewUtil.setDefaultText(item_hot_welfare_tv);
|
|
|
} else {
|
|
} else {
|
|
|
//TODO 加载数据
|
|
//TODO 加载数据
|
|
|
- ViewUtil.setText(item_hot_welfare_tv, welfareCenter.getName());
|
|
|
|
|
- GlideImageLoader.setImage(item_hot_welfare_iv, welfareCenter.getIcon());
|
|
|
|
|
|
|
+ ViewUtil.setText(item_hot_welfare_tv, welfareCenter.getApp().getName());
|
|
|
|
|
+ GlideImageLoader.setImage(item_hot_welfare_iv, welfareCenter.getApp().getIcon());
|
|
|
onClickToPlayGameDetail(holder.itemView, welfareCenter);
|
|
onClickToPlayGameDetail(holder.itemView, welfareCenter);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -171,9 +192,10 @@ public class FgtPlayGame extends BaseFragment {
|
|
|
|
|
|
|
|
//tab
|
|
//tab
|
|
|
initTab();
|
|
initTab();
|
|
|
|
|
+ initData();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- private void onClickToPlayGameDetail(View view, PlayGameEntity playGameEntity){
|
|
|
|
|
|
|
+ private void onClickToPlayGameDetail(View view, GameEntity playGameEntity){
|
|
|
view.setOnClickListener(new View.OnClickListener() {
|
|
view.setOnClickListener(new View.OnClickListener() {
|
|
|
@Override
|
|
@Override
|
|
|
public void onClick(View v) {
|
|
public void onClick(View v) {
|
|
@@ -245,7 +267,7 @@ public class FgtPlayGame extends BaseFragment {
|
|
|
|
|
|
|
|
private void initData(){
|
|
private void initData(){
|
|
|
|
|
|
|
|
- SheepApp.getInstance().getNetComponent().getApiService().slideshow(1)
|
|
|
|
|
|
|
+ SheepApp.getInstance().getNetComponent().getApiService().gameBanner(1)
|
|
|
.subscribeOn(Schedulers.io())
|
|
.subscribeOn(Schedulers.io())
|
|
|
.observeOn(AndroidSchedulers.mainThread())
|
|
.observeOn(AndroidSchedulers.mainThread())
|
|
|
.subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
|
|
.subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
|
|
@@ -283,8 +305,10 @@ public class FgtPlayGame extends BaseFragment {
|
|
|
.subscribe(new SheepSubscriber<BaseMessage>(SheepApp.getInstance()) {
|
|
.subscribe(new SheepSubscriber<BaseMessage>(SheepApp.getInstance()) {
|
|
|
@Override
|
|
@Override
|
|
|
public void onNext(BaseMessage baseMessage) {
|
|
public void onNext(BaseMessage baseMessage) {
|
|
|
- List<PlayGameEntity> newList = baseMessage.getDatas(PlayGameEntity.class);
|
|
|
|
|
- if(everyDayPlayListData.isEmpty() && !ListUtil.isEmpty(newList)) {//有缓存时不会加载,没有缓存时获取到数据会加载
|
|
|
|
|
|
|
+ List<GameEntity> newList = baseMessage.getDatas(GameEntity.class);
|
|
|
|
|
+ if(!ListUtil.isEmpty(newList)) {//有缓存时不会加载,没有缓存时获取到数据会加载
|
|
|
|
|
+ everyDayPlayListData.clear();
|
|
|
|
|
+ everyDayPlayListData.addAll(newList);
|
|
|
everyDayPlayList.getAdapter().notifyDataSetChanged();
|
|
everyDayPlayList.getAdapter().notifyDataSetChanged();
|
|
|
notifyDataSetChanged();
|
|
notifyDataSetChanged();
|
|
|
}
|
|
}
|
|
@@ -297,14 +321,16 @@ public class FgtPlayGame extends BaseFragment {
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
//近期最热
|
|
//近期最热
|
|
|
- SheepApp.getInstance().getNetComponent().getApiService().playgameDailyOrHotOrTypePlay(1, 10, 0,1,0)
|
|
|
|
|
|
|
+ SheepApp.getInstance().getNetComponent().getApiService().playgameDailyOrHotOrTypePlay(1, 10, 1,0,0)
|
|
|
.subscribeOn(Schedulers.io())
|
|
.subscribeOn(Schedulers.io())
|
|
|
.observeOn(AndroidSchedulers.mainThread())
|
|
.observeOn(AndroidSchedulers.mainThread())
|
|
|
.subscribe(new SheepSubscriber<BaseMessage>(SheepApp.getInstance()) {
|
|
.subscribe(new SheepSubscriber<BaseMessage>(SheepApp.getInstance()) {
|
|
|
@Override
|
|
@Override
|
|
|
public void onNext(BaseMessage baseMessage) {
|
|
public void onNext(BaseMessage baseMessage) {
|
|
|
- List<PlayGameEntity> newList = baseMessage.getDatas(PlayGameEntity.class);
|
|
|
|
|
- if(hotListData.isEmpty() && !ListUtil.isEmpty(newList)) {//有缓存时不会加载,没有缓存时获取到数据会加载
|
|
|
|
|
|
|
+ List<GameEntity> newList = baseMessage.getDatas(GameEntity.class);
|
|
|
|
|
+ if(!ListUtil.isEmpty(newList)) {//有缓存时不会加载,没有缓存时获取到数据会加载
|
|
|
|
|
+ hotListData.clear();
|
|
|
|
|
+ hotListData.addAll(newList);
|
|
|
recentHoeList.getAdapter().notifyDataSetChanged();
|
|
recentHoeList.getAdapter().notifyDataSetChanged();
|
|
|
notifyDataSetChanged();
|
|
notifyDataSetChanged();
|
|
|
}
|
|
}
|
|
@@ -346,7 +372,9 @@ public class FgtPlayGame extends BaseFragment {
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public void onPageSelected(int i) {
|
|
public void onPageSelected(int i) {
|
|
|
- FIND_TAG.onEvent("find_tag_name", ListUtil.hasIndex(list, i - 1) );
|
|
|
|
|
|
|
+// FIND_TAG.onEvent("find_tag_name", ListUtil.hasIndex(list, i - 1) );
|
|
|
|
|
+ curPosition = i;
|
|
|
|
|
+ mHandler.sendEmptyMessage(WHAT_UPDATE_VP_HEIGHT);//重新计算viewpager高度
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|