From 20cc2f478ff2c2428d16e40829ec1d3d415d7c6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E5=A3=AE=E5=8D=8E?= <401742778@qq.com> Date: Mon, 26 Sep 2016 22:35:31 +0800 Subject: [PATCH] =?UTF-8?q?=E6=88=91=E7=9A=84=E5=85=89=E7=8E=AF=EF=BC=8C?= =?UTF-8?q?=E6=97=A0=E5=AE=89=E8=A3=85=E3=80=81=E6=97=A0=E5=85=B3=E6=B3=A8?= =?UTF-8?q?=E6=97=B6=E9=A1=B5=E9=9D=A2=E6=98=BE=E7=A4=BA=E9=80=BB=E8=BE=91?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gamecenter/personal/ConcernFragment.java | 31 ++++++++++++++- .../personal/ConcernFragmentAdapter.java | 39 ++++--------------- .../gamecenter/personal/InstallFragment.java | 31 ++++++++++++++- .../personal/InstallFragmentAdapter.java | 39 ++++--------------- app/src/main/res/layout/fm_concern.xml | 2 + app/src/main/res/layout/fm_install.xml | 2 + 6 files changed, 76 insertions(+), 68 deletions(-) diff --git a/app/src/main/java/com/gh/gamecenter/personal/ConcernFragment.java b/app/src/main/java/com/gh/gamecenter/personal/ConcernFragment.java index 8b2f3e37bf..cf2ecf6112 100644 --- a/app/src/main/java/com/gh/gamecenter/personal/ConcernFragment.java +++ b/app/src/main/java/com/gh/gamecenter/personal/ConcernFragment.java @@ -4,6 +4,9 @@ import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; +import android.view.View; +import android.widget.LinearLayout; +import android.widget.TextView; import com.gh.base.AppController; import com.gh.base.BaseFragment; @@ -17,6 +20,9 @@ import com.gh.gamecenter.eventbus.EBConcernChanged; import com.gh.gamecenter.eventbus.EBNetworkState; import com.gh.gamecenter.eventbus.EBPackage; import com.gh.gamecenter.eventbus.EBReuse; +import com.gh.gamecenter.eventbus.EBSkip; + +import de.greenrobot.event.EventBus; /** * Created by LGT on 2016/8/12. @@ -27,6 +33,9 @@ public class ConcernFragment extends BaseFragment { private RecyclerView fm_concern_rv_show; private ConcernFragmentAdapter adapter; + private LinearLayout reuse_nodata_skip; + private TextView reuse_nodata_skip_tv_hint; + private TextView reuse_nodata_skip_tv_btn; private boolean isEverpause; @@ -52,12 +61,28 @@ public class ConcernFragment extends BaseFragment { init(R.layout.fm_concern); + reuse_nodata_skip.setVisibility(View.GONE); + reuse_nodata_skip_tv_hint.setText("暂无关注"); + reuse_nodata_skip_tv_btn.setText("查看精品推荐"); + reuse_nodata_skip_tv_btn.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + EventBus.getDefault().post(new EBSkip("GameFragment", 1)); + } + }); + fm_concern_rv_show.setHasFixedSize(true); fm_concern_rv_show.setLayoutManager(new LinearLayoutManager(getActivity())); - adapter = new ConcernFragmentAdapter(getActivity(), fm_concern_rv_show); + adapter = new ConcernFragmentAdapter(this); fm_concern_rv_show.setAdapter(adapter); } + @Override + public void loadEmpty() { + fm_concern_rv_show.setVisibility(View.GONE); + reuse_nodata_skip.setVisibility(View.VISIBLE); + } + // 关注事件 public void onEventMainThread(EBConcernChanged changed) { // if (changed.isConcern()) { @@ -71,7 +96,9 @@ public class ConcernFragment extends BaseFragment { // } // } // } - adapter = new ConcernFragmentAdapter(getActivity(), fm_concern_rv_show); + fm_concern_rv_show.setVisibility(View.VISIBLE); + reuse_nodata_skip.setVisibility(View.GONE); + adapter = new ConcernFragmentAdapter(this); fm_concern_rv_show.setAdapter(adapter); } diff --git a/app/src/main/java/com/gh/gamecenter/personal/ConcernFragmentAdapter.java b/app/src/main/java/com/gh/gamecenter/personal/ConcernFragmentAdapter.java index dedd6d00d5..5a2c5bcb44 100644 --- a/app/src/main/java/com/gh/gamecenter/personal/ConcernFragmentAdapter.java +++ b/app/src/main/java/com/gh/gamecenter/personal/ConcernFragmentAdapter.java @@ -25,11 +25,10 @@ import com.gh.gamecenter.GameDetailActivity; import com.gh.gamecenter.R; import com.gh.gamecenter.adapter.viewholder.FooterViewHolder; import com.gh.gamecenter.adapter.viewholder.GameNormalViewHolder; -import com.gh.gamecenter.adapter.viewholder.NoDataSkipViewHolder; import com.gh.gamecenter.db.info.ConcernInfo; import com.gh.gamecenter.entity.ApkEntity; import com.gh.gamecenter.entity.GameEntity; -import com.gh.gamecenter.eventbus.EBSkip; +import com.gh.gamecenter.listener.OnCallBackListener; import com.gh.gamecenter.manager.ConcernManager; import com.gh.gamecenter.manager.DataCollectionManager; import com.gh.gamecenter.manager.GameManager; @@ -43,16 +42,13 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import de.greenrobot.event.EventBus; - /** * Created by LGT on 2016/8/15. */ public class ConcernFragmentAdapter extends RecyclerView.Adapter { private Context context; - - private RecyclerView fm_concern_rv_show; + private OnCallBackListener listener; private List concernList; private List gameList; @@ -62,15 +58,12 @@ public class ConcernFragmentAdapter extends RecyclerView.Adapter nameMap; private boolean isRemove; - private boolean isEmpty; - public ConcernFragmentAdapter(Context context, RecyclerView recyclerView) { - this.context = context; - - fm_concern_rv_show = recyclerView; + public ConcernFragmentAdapter(ConcernFragment fragment) { + this.context = fragment.getActivity(); + this.listener = fragment; isRemove = false; - isEmpty = false; gameList = new ArrayList<>(); @@ -81,7 +74,7 @@ public class ConcernFragmentAdapter extends RecyclerView.Adapter position) { initGameNormal((GameNormalViewHolder) holder, gameList.get(position), position); - } else if (holder instanceof NoDataSkipViewHolder) { - NoDataSkipViewHolder viewHolder = (NoDataSkipViewHolder) holder; - - viewHolder.reuse_nodata_skip_tv_hint.setText("暂无关注"); - viewHolder.reuse_nodata_skip_tv_btn.setText("查看精品推荐"); - viewHolder.reuse_nodata_skip_tv_btn.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - EventBus.getDefault().post(new EBSkip("GameFragment", 1)); - } - }); } } @Override public int getItemCount() { - if (gameList.isEmpty() && (isEmpty || !isRemove)) { + if (gameList.isEmpty() && !isRemove) { return 1; } if (isRemove) { @@ -287,7 +265,4 @@ public class ConcernFragmentAdapter extends RecyclerView.Adapter { private Context context; - - private RecyclerView fm_install_rv_show; + private OnCallBackListener listener; private ArrayList gameList; private ArrayList sortedList; @@ -68,12 +64,10 @@ public class InstallFragmentAdapter extends RecyclerView.Adapter nameMap; private boolean isRemove; - private boolean isEmpty; - public InstallFragmentAdapter(Context context, RecyclerView recyclerView) { - this.context = context; - - fm_install_rv_show = recyclerView; + public InstallFragmentAdapter(InstallFragment fragment) { + this.context = fragment.getActivity(); + this.listener = fragment; gameList = new ArrayList<>(); sortedList = new ArrayList<>(); @@ -82,12 +76,11 @@ public class InstallFragmentAdapter extends RecyclerView.Adapter(); isRemove = false; - isEmpty = false; ConcernManager cManager = new ConcernManager(context); List runnableGame = cManager.getInstalledGame(); if (runnableGame.isEmpty()) { - isEmpty = true; + listener.loadEmpty(); } else { new Thread(new Runnable() { @Override @@ -307,10 +300,6 @@ public class InstallFragmentAdapter extends RecyclerView.Adapter + + \ No newline at end of file diff --git a/app/src/main/res/layout/fm_install.xml b/app/src/main/res/layout/fm_install.xml index e41c095065..3466e42966 100644 --- a/app/src/main/res/layout/fm_install.xml +++ b/app/src/main/res/layout/fm_install.xml @@ -9,4 +9,6 @@ android:layout_height="match_parent"> + + \ No newline at end of file