|
@@ -1,10 +1,8 @@
|
|
|
package org.telegram.onecric.ui.activity;
|
|
|
|
|
|
import static org.telegram.cricdit.utils.TimeUtils.getDayInfo;
|
|
|
+import static org.telegram.onecric.utils.AnimUtil.transAnim;
|
|
|
|
|
|
-import android.animation.Animator;
|
|
|
-import android.animation.AnimatorListenerAdapter;
|
|
|
-import android.animation.ObjectAnimator;
|
|
|
import android.app.Dialog;
|
|
|
import android.graphics.Color;
|
|
|
import android.graphics.Typeface;
|
|
@@ -14,7 +12,6 @@ import android.view.Gravity;
|
|
|
import android.view.LayoutInflater;
|
|
|
import android.view.View;
|
|
|
import android.view.WindowManager;
|
|
|
-import android.view.animation.LinearInterpolator;
|
|
|
import android.widget.ImageView;
|
|
|
import android.widget.LinearLayout;
|
|
|
import android.widget.TextView;
|
|
@@ -26,8 +23,8 @@ import com.ethanhua.skeleton.RecyclerViewSkeletonScreen;
|
|
|
import com.ethanhua.skeleton.Skeleton;
|
|
|
import com.github.gzuliyujiang.calendarpicker.CalendarPicker;
|
|
|
import com.github.gzuliyujiang.calendarpicker.core.ColorScheme;
|
|
|
-import com.google.android.material.appbar.AppBarLayout;
|
|
|
import com.lxj.xpopup.XPopup;
|
|
|
+import com.lxj.xpopup.core.BasePopupView;
|
|
|
import com.scwang.smart.refresh.layout.SmartRefreshLayout;
|
|
|
import com.scwang.smart.refresh.layout.api.RefreshLayout;
|
|
|
import com.scwang.smart.refresh.layout.listener.OnRefreshListener;
|
|
@@ -35,6 +32,7 @@ import org.telegram.cricdit.base.BaseTabActivity;
|
|
|
import org.telegram.cricdit.base.IPresenter;
|
|
|
import org.telegram.onecric.adapter.CricketFiltrateAdapter;
|
|
|
import org.telegram.onecric.base.JsonBean;
|
|
|
+import org.telegram.onecric.dialog.TournamentDialog;
|
|
|
import org.telegram.onecric.mvp.CricketAllBean;
|
|
|
import org.telegram.onecric.mvp.CricketFiltrateBean;
|
|
|
import org.telegram.cricdit.config.Constants;
|
|
@@ -49,8 +47,6 @@ import org.telegram.messenger.LocaleController;
|
|
|
import org.telegram.messenger.R;
|
|
|
import org.telegram.onecric.adapter.CricketDayAdapter;
|
|
|
import org.telegram.ui.ActionBar.ActionBar;
|
|
|
-import org.telegram.ui.ActionBar.ActionBarMenu;
|
|
|
-import org.telegram.ui.ActionBar.ActionBarMenuItem;
|
|
|
import org.telegram.ui.ActionBar.Theme;
|
|
|
import org.telegram.ui.WebviewActivity;
|
|
|
import java.text.SimpleDateFormat;
|
|
@@ -58,9 +54,10 @@ import java.util.ArrayList;
|
|
|
import java.util.Calendar;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
+import java.util.Timer;
|
|
|
+import java.util.TimerTask;
|
|
|
|
|
|
public class NewMatchActivity extends BaseTabActivity implements CricketNewView,View.OnClickListener{
|
|
|
- private ActionBarMenu menu;
|
|
|
private PrivacyPolicyPopup mPopupView;
|
|
|
|
|
|
private RecyclerView rv_filtrate;
|
|
@@ -80,26 +77,30 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
private LinearLayout ll_tours;
|
|
|
private TextView tv_to_today;
|
|
|
private TextView tv_fresh;
|
|
|
+ private TextView tv_search;
|
|
|
private LinearLayout ll_empty;
|
|
|
private CricketDayAdapter mAdapter;
|
|
|
- private CricketFiltrateAdapter mFiltrateAdapter;
|
|
|
+ public CricketFiltrateAdapter mFiltrateAdapter;
|
|
|
|
|
|
private boolean isLiveNow = false;
|
|
|
private int streamType = 0;
|
|
|
private int selectToursNum = 0;
|
|
|
private Dialog mStreamDialog;
|
|
|
- private List<CricketFiltrateBean> filtrateCheckedList;
|
|
|
- private String tag="";
|
|
|
+ public List<CricketFiltrateBean> filtrateCheckedList;
|
|
|
+ public String tag="";
|
|
|
private boolean isNotNetWork;
|
|
|
private long singleTimeInMillis;
|
|
|
private CalendarPicker picker;
|
|
|
private RecyclerViewSkeletonScreen filtrateSkeletonScreen;//会导致回到每次rv数量变化会跳回第一页
|
|
|
- private String lastDay;
|
|
|
- private String endDay;
|
|
|
+ private String lastDay,lastDay2;
|
|
|
+ private String endDay,endDay2;
|
|
|
public int todayPosition = 0;
|
|
|
private Drawable drawableTop,drawableDown;
|
|
|
private LinearLayout skeletonLoadLayout;
|
|
|
private CricketNewPresenter mPresenter;
|
|
|
+ private Timer mTimer;
|
|
|
+ private TournamentDialog tournamentDialog;
|
|
|
+ private BasePopupView popupView;
|
|
|
@Override
|
|
|
protected int getLayoutResId() {
|
|
|
return R.layout.activity_match_new;
|
|
@@ -117,10 +118,6 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
|
|
|
@Override
|
|
|
protected void initView(View view) {
|
|
|
- AppBarLayout appBarLayout = view.findViewById(R.id.match_app_bar);
|
|
|
- appBarLayout.setTargetElevation(0);
|
|
|
- menu = actionBar.createMenu();
|
|
|
- initTopItem();
|
|
|
mPresenter = new CricketNewPresenter(this);
|
|
|
rv_filtrate = view.findViewById(R.id.rv_filtrate);
|
|
|
tv_day = view.findViewById(R.id.tv_day);
|
|
@@ -133,13 +130,14 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
ll_tours = view.findViewById(R.id.ll_tours);
|
|
|
tv_to_today = view.findViewById(R.id.tv_to_today);
|
|
|
ll_empty = view.findViewById(R.id.ll_empty);
|
|
|
- tv_live_now.setOnClickListener(this);
|
|
|
- tv_tours_num.setOnClickListener(this);
|
|
|
tv_fresh = view.findViewById(R.id.tv_fresh);
|
|
|
skeletonLoadLayout = view.findViewById(R.id.ll_skeleton);
|
|
|
+
|
|
|
+ tv_live_now.setOnClickListener(this);
|
|
|
tv_fresh.setOnClickListener(this);
|
|
|
view.findViewById(R.id.tv_calendar).setOnClickListener(this);
|
|
|
view.findViewById(R.id.tv_to_today).setOnClickListener(this);
|
|
|
+ view.findViewById(R.id.tv_search).setOnClickListener(this);
|
|
|
ll_tours.setOnClickListener(this);
|
|
|
initStreamDialog();
|
|
|
initCalendarPicker();
|
|
@@ -147,7 +145,23 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
drawableTop.setBounds(0,0,drawableTop.getMinimumWidth(),drawableTop.getMinimumHeight());
|
|
|
drawableDown = getContext().getResources().getDrawable(R.mipmap.ic_go_today_down);
|
|
|
drawableDown.setBounds(0,0,drawableDown.getMinimumWidth(),drawableDown.getMinimumHeight());
|
|
|
-
|
|
|
+ tournamentDialog = new TournamentDialog(getContext(),this,new TournamentDialog.OnSelectTourListener() {
|
|
|
+ @Override
|
|
|
+ public void selectedWord(String tourIds, int checkNum) {
|
|
|
+ tag = tourIds;
|
|
|
+ selectToursNum = checkNum;
|
|
|
+ tv_tours_num.setText(selectToursNum+"");
|
|
|
+ tv_tours_num.setVisibility(selectToursNum > 0 ? View.VISIBLE : View.GONE);
|
|
|
+ mFiltrateAdapter.notifyDataSetChanged();
|
|
|
+ requestList(1);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ popupView = new XPopup.Builder(getContext())
|
|
|
+ .moveUpToKeyboard(true)
|
|
|
+ .isDestroyOnDismiss(false)
|
|
|
+ .isLightNavigationBar(true)
|
|
|
+ .navigationBarColor(getContext().getResources().getColor(R.color.colorWhite))
|
|
|
+ .asCustom(tournamentDialog);
|
|
|
initData();
|
|
|
}
|
|
|
|
|
@@ -157,29 +171,48 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
mFiltrateAdapter.setOnItemChildClickListener((adapter, view, position) -> {
|
|
|
if(view.getId() == R.id.tv_name){
|
|
|
mFiltrateAdapter.getItem(position).setCheck(!mFiltrateAdapter.getItem(position).isCheck());
|
|
|
- if(mFiltrateAdapter.getItem(position).isCheck()){
|
|
|
+ int id = mFiltrateAdapter.getData().get(position).getId();
|
|
|
+ List<CricketFiltrateBean> tList = new ArrayList<>();
|
|
|
+ if(tournamentDialog.mAdapter!=null && tournamentDialog.mAdapter.getItemCount()>0){
|
|
|
+ tList.addAll(tournamentDialog.mAdapter.getData());
|
|
|
+ for(int i=0; i<tList.size();i++){
|
|
|
+ if(id == tournamentDialog.mAdapter.getData().get(i).getId()){
|
|
|
+ tList.get(i).setCheck(mFiltrateAdapter.getItem(position).isCheck());
|
|
|
+ tournamentDialog.mAdapter.addData(0,tList.get(i));
|
|
|
+ tournamentDialog.mAdapter.remove(i+1);
|
|
|
+ tournamentDialog.mAdapter.notifyDataSetChanged();
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ StringBuilder tagsId = new StringBuilder(tag);
|
|
|
+ if(mFiltrateAdapter.getData().get(position).isCheck()){
|
|
|
++selectToursNum;
|
|
|
- filtrateCheckedList.add(mFiltrateAdapter.getItem(position));
|
|
|
- mFiltrateAdapter.addData(0,mFiltrateAdapter.getItem(position));
|
|
|
+ if(!tag.contains(","+id) && !tag.contains(id+",")){
|
|
|
+ tagsId.append(id+",");
|
|
|
+ }
|
|
|
+ filtrateCheckedList.add(mFiltrateAdapter.getData().get(position));
|
|
|
+ mFiltrateAdapter.addData(0,mFiltrateAdapter.getData().get(position));
|
|
|
mFiltrateAdapter.remove(position+1);
|
|
|
}else{
|
|
|
--selectToursNum;
|
|
|
- filtrateCheckedList.remove(mFiltrateAdapter.getItem(position));
|
|
|
- mFiltrateAdapter.addData(mFiltrateAdapter.getItem(position));
|
|
|
+ if(tag.contains(id+",")){
|
|
|
+ tagsId.delete(tagsId.indexOf(id+","),
|
|
|
+ tagsId.indexOf(id+",")+(id+",").length());
|
|
|
+ }
|
|
|
+ filtrateCheckedList.remove(mFiltrateAdapter.getData().get(position));
|
|
|
+ mFiltrateAdapter.addData(mFiltrateAdapter.getData().get(position));
|
|
|
mFiltrateAdapter.remove(position);
|
|
|
}
|
|
|
+ if(TextUtils.isEmpty(tagsId.toString())){
|
|
|
+ tag = "";
|
|
|
+ }else{
|
|
|
+ tag = tagsId.toString();
|
|
|
+ }
|
|
|
rv_filtrate.smoothScrollToPosition(0);
|
|
|
tv_tours_num.setText(selectToursNum + "");
|
|
|
tv_tours_num.setVisibility(selectToursNum > 0 ? View.VISIBLE : View.GONE);
|
|
|
- if(filtrateCheckedList.size()>0){
|
|
|
- StringBuilder tagsId = new StringBuilder();
|
|
|
- for(CricketFiltrateBean bean : filtrateCheckedList){
|
|
|
- tagsId.append(","+bean.getId());
|
|
|
- }
|
|
|
- tag = tagsId.substring(1);
|
|
|
- }else{
|
|
|
- tag = "";
|
|
|
- }
|
|
|
requestList(1);
|
|
|
}
|
|
|
});
|
|
@@ -194,7 +227,6 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
}
|
|
|
});
|
|
|
mFiltrateAdapter.addHeaderView(headerStreamingView,-1, LinearLayout.HORIZONTAL);
|
|
|
-
|
|
|
rv_filtrate.setLayoutManager(new LinearLayoutManager(getContext(),LinearLayoutManager.HORIZONTAL, false));
|
|
|
rv_filtrate.setAdapter(mFiltrateAdapter);
|
|
|
|
|
@@ -202,18 +234,15 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
smart_rl.setOnRefreshListener(new OnRefreshListener() {
|
|
|
@Override
|
|
|
public void onRefresh(@NonNull RefreshLayout refreshLayout) {
|
|
|
- //前一天
|
|
|
requestList(0);
|
|
|
}
|
|
|
});
|
|
|
|
|
|
-// recyclerView.getRecycledViewPool().setMaxRecycledViews(0, 20);
|
|
|
-// recyclerView.setItemViewCacheSize(20);
|
|
|
-// mAdapter = new CricketDayAdapter(this,getActivity(), new ArrayList<>());
|
|
|
- mAdapter = new CricketDayAdapter(this,R.layout.item_cricket_day, new ArrayList<>());
|
|
|
+ mAdapter = new CricketDayAdapter(this,getContext(), new ArrayList<>());
|
|
|
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getContext());
|
|
|
recyclerView.setLayoutManager(linearLayoutManager);
|
|
|
recyclerView.setAdapter(mAdapter);
|
|
|
+ recyclerView.setItemAnimator(null);
|
|
|
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
|
|
|
@Override
|
|
|
public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) {
|
|
@@ -227,7 +256,9 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
}else if(newState == RecyclerView.SCROLL_STATE_DRAGGING){
|
|
|
if(recyclerView.getChildAt(0) != null){
|
|
|
int currentPosition = ((RecyclerView.LayoutParams) recyclerView.getChildAt(0).getLayoutParams()).getViewAdapterPosition();
|
|
|
- setDayInfo(getDayInfo(mAdapter.getItem(currentPosition).getDay()));
|
|
|
+ if(currentPosition != -1 && !TextUtils.isEmpty(mAdapter.getData().get(currentPosition).getDay())){
|
|
|
+ setDayInfo(getDayInfo(mAdapter.getData().get(currentPosition).getDay()));
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -245,15 +276,6 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
requestList(1);
|
|
|
}
|
|
|
|
|
|
- private void initTopItem() {
|
|
|
- ActionBarMenuItem searchItem = menu.addItem(0, R.drawable.ic_ab_search);
|
|
|
- searchItem.setIconColor(ColorUtil.COLOR_WHITE);
|
|
|
-
|
|
|
- searchItem.setOnClickListener(v -> {
|
|
|
-// SearchMatchActivity.forward(getContext());
|
|
|
- });
|
|
|
- }
|
|
|
-
|
|
|
@Override
|
|
|
protected void initActionBar(ActionBar actionBar) {
|
|
|
super.initActionBar(actionBar);
|
|
@@ -353,9 +375,11 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
picker.show();
|
|
|
}else if(id == R.id.ll_tours){
|
|
|
//展开筛选联赛弹窗
|
|
|
-
|
|
|
- }else if(id == R.id.tv_tours_num){
|
|
|
- //数量
|
|
|
+ if(tournamentDialog != null){
|
|
|
+ if (tournamentDialog != null) {
|
|
|
+ popupView.show();
|
|
|
+ }
|
|
|
+ }
|
|
|
}else if(id == R.id.ll_all_live){
|
|
|
if(streamType!=0){
|
|
|
streamType = 0;
|
|
@@ -372,7 +396,6 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
if(mStreamDialog != null){
|
|
|
mStreamDialog.dismiss();
|
|
|
}
|
|
|
-
|
|
|
}else if(id == R.id.ll_match_live){
|
|
|
if(streamType!=1){
|
|
|
streamType = 1;
|
|
@@ -389,7 +412,6 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
if(mStreamDialog != null){
|
|
|
mStreamDialog.dismiss();
|
|
|
}
|
|
|
-
|
|
|
}else if(id == R.id.ll_author_live){
|
|
|
if(streamType!=2){
|
|
|
streamType = 2;
|
|
@@ -406,18 +428,21 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
if(mStreamDialog != null){
|
|
|
mStreamDialog.dismiss();
|
|
|
}
|
|
|
-
|
|
|
}else if(id == R.id.tv_to_today){
|
|
|
- recyclerView.smoothScrollToPosition(todayPosition);
|
|
|
- setDayInfo(getDayInfo(mAdapter.getItem(todayPosition).getDay()));
|
|
|
+ if(todayPosition<mAdapter.getData().size()){
|
|
|
+ recyclerView.smoothScrollToPosition(todayPosition);
|
|
|
+ setDayInfo(getDayInfo(mAdapter.getData().get(todayPosition).getDay()));
|
|
|
+ }
|
|
|
}else if(id == R.id.tv_fresh){
|
|
|
ll_empty.setVisibility(View.GONE);
|
|
|
recyclerView.setVisibility(View.VISIBLE);
|
|
|
+ tv_to_today.setVisibility(View.VISIBLE);
|
|
|
if(isLiveNow){
|
|
|
tv_live_now.setSelected(false);
|
|
|
isLiveNow = false;
|
|
|
smart_rl.setEnableRefresh(true);
|
|
|
}
|
|
|
+
|
|
|
if(streamType!=0){
|
|
|
streamType = 0;
|
|
|
if(iv_all != null){
|
|
@@ -429,21 +454,27 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
iv_streaming.setSelected(false);
|
|
|
tv_streaming.setSelected(false);
|
|
|
}
|
|
|
+
|
|
|
tag = "";
|
|
|
mPresenter.getFiltrateList();
|
|
|
requestList(1);
|
|
|
+ }else if(id == R.id.tv_search){
|
|
|
+ SearchMatchActivity.forward(getContext());
|
|
|
}
|
|
|
}
|
|
|
|
|
|
private void showTodayBtnAnim(int type){
|
|
|
+ if(!TextUtils.isEmpty(tag)){
|
|
|
+ return;
|
|
|
+ }
|
|
|
switch (type){
|
|
|
- case 0://从下往上 出现
|
|
|
+ case 0:
|
|
|
if(tv_to_today.isSelected()){
|
|
|
transAnim(tv_to_today,tv_to_today.getMeasuredHeight() + UIUtil.dip2px(getContext(),20),0);
|
|
|
tv_to_today.setSelected(false);
|
|
|
}
|
|
|
break;
|
|
|
- case 1://从上往下 退出
|
|
|
+ case 1:
|
|
|
if(!tv_to_today.isSelected()){
|
|
|
transAnim(tv_to_today,0,tv_to_today.getMeasuredHeight() + UIUtil.dip2px(getContext(),20));
|
|
|
tv_to_today.setSelected(true);
|
|
@@ -452,20 +483,7 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- public void transAnim(View view,float start,float end) {
|
|
|
- ObjectAnimator mObjectAnimator = ObjectAnimator.ofFloat(view, "translationY",start,end);
|
|
|
- mObjectAnimator.setDuration(500);
|
|
|
- mObjectAnimator.setInterpolator(new LinearInterpolator());
|
|
|
|
|
|
- mObjectAnimator.addListener(new AnimatorListenerAdapter() {
|
|
|
- @Override
|
|
|
- public void onAnimationEnd(Animator animation) {
|
|
|
- super.onAnimationEnd(animation);
|
|
|
-
|
|
|
- }
|
|
|
- });
|
|
|
- mObjectAnimator.start(); // 开始播放动画
|
|
|
- }
|
|
|
|
|
|
public void requestList(int type){
|
|
|
if(type == 0){
|
|
@@ -474,8 +492,10 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
}
|
|
|
if(mAdapter.getItemCount() <= 0 && isNotNetWork){
|
|
|
requestList(1);
|
|
|
+ }else if(mAdapter.getItemCount() <= 0 && !TextUtils.isEmpty(lastDay2)){
|
|
|
+ mPresenter.getCricketMatchList(type,lastDay2,TextUtils.isEmpty(tag)?"":tag,streamType,isLiveNow);//前一天
|
|
|
}else if(!TextUtils.isEmpty(lastDay)){
|
|
|
- mPresenter.getCricketMatchList(type,lastDay,tag,streamType,isLiveNow);
|
|
|
+ mPresenter.getCricketMatchList(type,lastDay,TextUtils.isEmpty(tag)?"":tag,streamType,isLiveNow);//前一天
|
|
|
}else{
|
|
|
smart_rl.finishRefresh();
|
|
|
}
|
|
@@ -484,10 +504,15 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
endDay = "";
|
|
|
skeletonLoadLayout.setVisibility(View.VISIBLE);
|
|
|
recyclerView.setVisibility(View.GONE);
|
|
|
- mPresenter.getCricketMatchList(type,new SimpleDateFormat("yyyy-MM-dd").format(singleTimeInMillis),tag,streamType,isLiveNow);
|
|
|
+ mPresenter.getCricketMatchList(type,new SimpleDateFormat("yyyy-MM-dd").format(singleTimeInMillis),TextUtils.isEmpty(tag)?"":tag,streamType,isLiveNow);//选中日
|
|
|
}else if(type == 2){
|
|
|
- if(!TextUtils.isEmpty(endDay)){
|
|
|
- mPresenter.getCricketMatchList(type,endDay,tag,streamType,isLiveNow);
|
|
|
+ if(!TextUtils.isEmpty(tag)){
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if(mAdapter.getItemCount() <= 0 && !TextUtils.isEmpty(endDay2)){
|
|
|
+ mPresenter.getCricketMatchList(type,endDay2,TextUtils.isEmpty(tag)?"":tag,streamType,isLiveNow);//后一天
|
|
|
+ }else if(!TextUtils.isEmpty(endDay)){
|
|
|
+ mPresenter.getCricketMatchList(type,endDay,TextUtils.isEmpty(tag)?"":tag,streamType,isLiveNow);//后一天
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -499,6 +524,7 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
tv_tours_num.setVisibility(View.GONE);
|
|
|
if(list!=null){
|
|
|
mFiltrateAdapter.setNewData(list);
|
|
|
+ ll_tours.setVisibility(View.VISIBLE);
|
|
|
rv_filtrate.setBackgroundColor(Color.TRANSPARENT);
|
|
|
filtrateSkeletonScreen.hide();
|
|
|
}
|
|
@@ -510,32 +536,55 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
smart_rl.finishRefresh();
|
|
|
}
|
|
|
skeletonLoadLayout.setVisibility(View.GONE);
|
|
|
+
|
|
|
+ if(type == 1){
|
|
|
+ setDayInfo(getDayInfo(singleTimeInMillis));
|
|
|
+ }
|
|
|
+
|
|
|
if (bean != null && bean.getItem() != null && bean.getItem().size() > 0) {
|
|
|
+ ll_empty.setVisibility(View.GONE);
|
|
|
if(type == 0 || type == 1){
|
|
|
this.lastDay = bean.getFrontDay();
|
|
|
}
|
|
|
if(type == 2 || type == 1){
|
|
|
this.endDay = bean.getEndDay();
|
|
|
}
|
|
|
- ll_empty.setVisibility(View.GONE);
|
|
|
recyclerView.setVisibility(View.VISIBLE);
|
|
|
+ tv_to_today.setVisibility(View.VISIBLE);
|
|
|
if(type == 0){
|
|
|
todayPosition = todayPosition+bean.getItem().size();
|
|
|
mAdapter.addData(0,bean.getItem());
|
|
|
}else if(type == 1){
|
|
|
todayPosition = 0;
|
|
|
setDayInfo(getDayInfo(bean.getItem().get(0).getDay()));
|
|
|
- mAdapter.setNewData(bean.getItem());;
|
|
|
+// mAdapter.setNewData(bean.getItem());
|
|
|
+ mAdapter.setData(bean.getItem());
|
|
|
recyclerView.scrollBy(0, (int) (recyclerView.getY() + UIUtil.dip2px(getContext(),60)));
|
|
|
+ //当前时间
|
|
|
+ Date now = new Date();
|
|
|
+ SimpleDateFormat sf = new SimpleDateFormat("yyyyMMdd");
|
|
|
+ //获取今天的日期
|
|
|
+ String nowDay = sf.format(now);
|
|
|
+ //对比的时间
|
|
|
+ String day = sf.format(singleTimeInMillis);
|
|
|
+ if(mTimer == null && day.equals(nowDay)){
|
|
|
+ refreshTodayData();
|
|
|
+ }
|
|
|
}else{
|
|
|
mAdapter.addData(bean.getItem());
|
|
|
}
|
|
|
- } else if(mAdapter.getItemCount() == 0){
|
|
|
- recyclerView.setVisibility(View.GONE);
|
|
|
- ll_empty.setVisibility(View.VISIBLE);
|
|
|
- } else if(type == 1 && (!TextUtils.isEmpty(tag) || isLiveNow || streamType != 0)){
|
|
|
- mAdapter.setNewData(new ArrayList<>());
|
|
|
+ } else if(mAdapter.getItemCount() == 0 || type == 1){
|
|
|
+ if(bean != null){
|
|
|
+ if(type == 0 || type == 1){
|
|
|
+ this.lastDay2 = bean.getFrontDay();
|
|
|
+ }
|
|
|
+ if(type == 2 || type == 1){
|
|
|
+ this.endDay2 = bean.getFrontDay();
|
|
|
+ }
|
|
|
+ }
|
|
|
recyclerView.setVisibility(View.GONE);
|
|
|
+ tv_to_today.setVisibility(View.GONE);
|
|
|
+ mAdapter.setData(new ArrayList<>());
|
|
|
ll_empty.setVisibility(View.VISIBLE);
|
|
|
}
|
|
|
}
|
|
@@ -556,11 +605,9 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
}else{
|
|
|
isNotNetWork = false;
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
|
|
|
public void setDayInfo(String[] info){
|
|
|
- singleTimeInMillis = new Date().getTime();
|
|
|
tv_date.setText(info[0]);
|
|
|
tv_month.setText(info[1]);
|
|
|
tv_day.setText(info[2]);
|
|
@@ -637,4 +684,39 @@ public class NewMatchActivity extends BaseTabActivity implements CricketNewView,
|
|
|
super.onResume();
|
|
|
setNavigationBarColor(ColorUtil.COLOR_WHITE);
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onDestroy() {
|
|
|
+ super.onDestroy();
|
|
|
+ if(mTimer != null){
|
|
|
+ mTimer.cancel();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 每10s刷新今天的数据
|
|
|
+ */
|
|
|
+ private void refreshTodayData(){
|
|
|
+ mTimer = new Timer();
|
|
|
+ mTimer.schedule(new TimerTask() {
|
|
|
+ @Override
|
|
|
+ public void run() {
|
|
|
+ if(tv_day.getText().toString().equals("Today")){
|
|
|
+ mPresenter.getRefreshTodayData(tag,streamType,isLiveNow);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }, 10000, 10000);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void getRefreshSuccess(CricketAllBean bean) {
|
|
|
+ try{
|
|
|
+ if(mAdapter.getItemCount()-1 >= todayPosition){
|
|
|
+ mAdapter.setPositionData(todayPosition,bean.getItem().get(0));
|
|
|
+ }
|
|
|
+ }catch (Exception e){
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
}
|