diff --git a/app/src/main/java/com/gh/base/BaseActivity.java b/app/src/main/java/com/gh/base/BaseActivity.java index 81c8ec0003..135d9cfecb 100644 --- a/app/src/main/java/com/gh/base/BaseActivity.java +++ b/app/src/main/java/com/gh/base/BaseActivity.java @@ -2,6 +2,7 @@ package com.gh.base; import android.os.Bundle; import android.support.annotation.NonNull; +import android.view.KeyEvent; import android.view.View; import android.view.View.OnClickListener; import android.widget.TextView; @@ -66,7 +67,7 @@ public abstract class BaseActivity extends BaseAppCompatToolBarActivity implemen back.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { - finish(); + onBack(); } }); } @@ -171,6 +172,26 @@ public abstract class BaseActivity extends BaseAppCompatToolBarActivity implemen // DownloadManager.getInstance(this).initGameMap(); } + @Override + public boolean onKeyDown(int keyCode, KeyEvent event) { + if (keyCode == KeyEvent.KEYCODE_BACK) { + onBack(); + return true; + } + return super.onKeyDown(keyCode, event); + } + + // 回退之前的操作 + protected void onBackControl(){ + + } + + // 整个回退操作(继承注意 super) + protected void onBack() { + onBackControl(); + finish(); + } + @Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { super.onRequestPermissionsResult(requestCode, permissions, grantResults); diff --git a/app/src/main/java/com/gh/common/util/LibaoUtils.java b/app/src/main/java/com/gh/common/util/LibaoUtils.java index cf6b19841e..bca19d3eb4 100644 --- a/app/src/main/java/com/gh/common/util/LibaoUtils.java +++ b/app/src/main/java/com/gh/common/util/LibaoUtils.java @@ -192,45 +192,21 @@ public class LibaoUtils { libaoBtn.setBackgroundResource(R.drawable.textview_blue_style); break; case "repeatLing": - if (adapter == null) { - libaoBtn.setText("已领取"); - libaoBtn.setBackgroundResource(R.drawable.libao_linged_style); - libaoBtn.setTextColor(ContextCompat.getColorStateList(context, R.color.libao_linged_selector)); - } else { - libaoBtn.setText("再领一个"); - libaoBtn.setBackgroundResource(R.drawable.textview_cancel_up); - } + libaoBtn.setText("再领一个"); + libaoBtn.setBackgroundResource(R.drawable.textview_cancel_up); break; case "repeatLinged": - if (adapter == null) { - libaoBtn.setText("已领取"); - libaoBtn.setBackgroundResource(R.drawable.libao_linged_style); - libaoBtn.setTextColor(ContextCompat.getColorStateList(context, R.color.libao_linged_selector)); - } else { - libaoBtn.setText("再领一个"); - libaoBtn.setBackgroundResource(R.drawable.textview_green_style); - } + libaoBtn.setText("再领一个"); + libaoBtn.setBackgroundResource(R.drawable.textview_green_style); break; case "repeatTao": - if (adapter == null) { - libaoBtn.setText("已淘号"); - libaoBtn.setBackgroundResource(R.drawable.libao_taoed_style); - libaoBtn.setTextColor(ContextCompat.getColorStateList(context, R.color.libao_taoed_selector)); - } else { - libaoBtn.setText("再淘一个"); - libaoBtn.setBackgroundResource(R.drawable.textview_cancel_up); - } + libaoBtn.setText("再淘一个"); + libaoBtn.setBackgroundResource(R.drawable.textview_cancel_up); break; case "repeatTaoed": - if (adapter == null) { - libaoBtn.setText("已淘号"); - libaoBtn.setBackgroundResource(R.drawable.libao_taoed_style); - libaoBtn.setTextColor(ContextCompat.getColorStateList(context, R.color.libao_taoed_selector)); - } else { - libaoBtn.setText("再淘一个"); - libaoBtn.setBackgroundResource(R.drawable.textview_orange_style); - } + libaoBtn.setText("再淘一个"); + libaoBtn.setBackgroundResource(R.drawable.textview_orange_style); break; default: libaoBtn.setBackgroundResource(R.drawable.textview_cancel_style); @@ -588,7 +564,7 @@ public class LibaoUtils { // 合并List 和 List public static void initLiBaoEntity(List statusList, List libaoEntities) { - + for (LibaoEntity libaoEntity : libaoEntities) { for (LibaoStatusEntity libaoStatusEntity : statusList) { if (libaoEntity.getId().equals(libaoStatusEntity.getId())) { diff --git a/app/src/main/java/com/gh/gamecenter/LibaoDetailActivity.java b/app/src/main/java/com/gh/gamecenter/LibaoDetailActivity.java index bdd08568d0..52a9d88785 100644 --- a/app/src/main/java/com/gh/gamecenter/LibaoDetailActivity.java +++ b/app/src/main/java/com/gh/gamecenter/LibaoDetailActivity.java @@ -82,6 +82,7 @@ public class LibaoDetailActivity extends BaseActivity implements LibaoDetailAdap private boolean mIsScroll; + private String mListStatus; // 记录列表领取状态(防止状态在详情改变导致列表状态改变) private String mName; private String mTitle; protected String mDownloadAddWord; @@ -237,7 +238,7 @@ public class LibaoDetailActivity extends BaseActivity implements LibaoDetailAdap // 检查礼包是否可以重复领取 private void checkLibaoStatus() { if (mLibaoEntity != null && mLibaoEntity.getRepeat() > 0 && mLibaoEntity.getUserData() != null - && mLibaoEntity.getUserData().getUserDataLibaoList() != null) { + && mLibaoEntity.getUserData().getUserDataLibaoList() != null) { mTitle = mLibaoEntity.getName(); String status = mLibaoEntity.getStatus(); @@ -251,7 +252,7 @@ public class LibaoDetailActivity extends BaseActivity implements LibaoDetailAdap for (UserDataLibaoEntity userDataLibaoEntity : userDataLibaoList) { if (beforeStatus != null && beforeStatus.equals(userDataLibaoEntity.getType())) { - curStatusCount ++; + curStatusCount++; } } if (repeat <= curStatusCount) return; // 当前领取/淘号总数是否超过总重复领取次数 @@ -259,6 +260,7 @@ public class LibaoDetailActivity extends BaseActivity implements LibaoDetailAdap if ((("linged").equals(status) || ("taoed").equals(status)) && ("ling".equals(beforeStatus) || "tao".equals(beforeStatus))) { //检查是否到了重复领取时间 + mListStatus = mLibaoEntity.getStatus(); if (isCanLing()) { handler.sendEmptyMessage(1); } else { @@ -288,16 +290,11 @@ public class LibaoDetailActivity extends BaseActivity implements LibaoDetailAdap long curTime = Utils.getTime(this) * 1000; int lingDay = Integer.parseInt(formatDay.format(lingTime)); int curDay = Integer.parseInt(formatDay.format(curTime)); - if (curTime > lingTime) { - if (curDay != 1 && curDay > lingDay) { - return true; - } else if (curDay == 1 && lingDay > curDay) { - return false; - } + if (curTime > lingTime && curDay != lingDay) { + return true; } else { return false; } - return false; } private void getLibaoDigest(Context context, String libao_id) { @@ -357,6 +354,16 @@ public class LibaoDetailActivity extends BaseActivity implements LibaoDetailAdap handler.removeCallbacksAndMessages(null); } + @Override + protected void onBackControl() { + super.onBackControl(); + // 重置领取状态 + String status = mLibaoEntity.getStatus(); + if (!TextUtils.isEmpty(status) && status.contains("repeat")) { + mLibaoEntity.setStatus(mListStatus); + } + } + @Override public void loadDone() { if (mLlLoading != null) { @@ -374,7 +381,7 @@ public class LibaoDetailActivity extends BaseActivity implements LibaoDetailAdap public void loadDone(Object obj) { // 在当前详情页领取获取淘号的数据 if (obj != null) { Intent data = new Intent(); - data.putExtra("UserDataLibaoEntity", (UserDataLibaoEntity)obj); + data.putExtra("UserDataLibaoEntity", (UserDataLibaoEntity) obj); setResult(0x122, data); } } diff --git a/app/src/main/java/com/gh/gamecenter/UserRegionActivity.java b/app/src/main/java/com/gh/gamecenter/UserRegionActivity.java index 25d74acfe4..0a1bf3cd5f 100644 --- a/app/src/main/java/com/gh/gamecenter/UserRegionActivity.java +++ b/app/src/main/java/com/gh/gamecenter/UserRegionActivity.java @@ -6,8 +6,6 @@ import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentTransaction; import android.text.TextUtils; -import android.view.KeyEvent; -import android.view.View; import com.gh.base.BaseActivity; import com.gh.common.util.LoginUtils; @@ -41,14 +39,6 @@ public class UserRegionActivity extends BaseActivity implements LoginUtils.onCha protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); changeFragment(null, null); - - findViewById(R.id.actionbar_rl_back).setOnClickListener( - new View.OnClickListener() { - @Override - public void onClick(View v) { - back(); - } - }); } private void changeFragment(String provinceName, List provinceList) { @@ -114,15 +104,7 @@ public class UserRegionActivity extends BaseActivity implements LoginUtils.onCha } @Override - public boolean onKeyDown(int keyCode, KeyEvent event) { - if (keyCode == KeyEvent.KEYCODE_BACK) { - back(); - return true; - } - return super.onKeyDown(keyCode, event); - } - - private void back() { + protected void onBack() { if (!TextUtils.isEmpty(mProvinceName)) { mProvinceName = null; getSupportFragmentManager().beginTransaction().remove(mProvFragment).commit(); diff --git a/app/src/main/java/com/gh/gamecenter/WebActivity.java b/app/src/main/java/com/gh/gamecenter/WebActivity.java index 2e3022b3a1..a4226541ca 100644 --- a/app/src/main/java/com/gh/gamecenter/WebActivity.java +++ b/app/src/main/java/com/gh/gamecenter/WebActivity.java @@ -133,7 +133,7 @@ public class WebActivity extends BaseActivity implements View.OnClickListener{ super.onActivityResult(requestCode, resultCode, data); // 刷新评论数 if (resultCode == WEB_COMMENT_REQUEST && newsId != null && data != null && data.getExtras() != null) { - webComment.setText("查看评论(" + data.getExtras().getInt("commentNum") + ")"); + webComment.setText( getString(R.string.web_newscomment_count, data.getExtras().getInt("commentNum"))); } else if (requestCode == com.tencent.connect.common.Constants.REQUEST_QQ_SHARE || requestCode == com.tencent.connect.common.Constants.REQUEST_QZONE_SHARE) { Tencent.onActivityResultData(requestCode, resultCode, data, ShareUtils.getInstance(this).QqShareListener); diff --git a/app/src/main/java/com/gh/gamecenter/collection/ArticleAdapter.java b/app/src/main/java/com/gh/gamecenter/collection/ArticleAdapter.java index 0acbdcb45c..1ca566f548 100644 --- a/app/src/main/java/com/gh/gamecenter/collection/ArticleAdapter.java +++ b/app/src/main/java/com/gh/gamecenter/collection/ArticleAdapter.java @@ -64,7 +64,7 @@ public class ArticleAdapter extends BaseRecyclerAdapter { private boolean isNetworkError; - public ArticleAdapter(Context context , OnRequestCallBackListener listener) { + public ArticleAdapter(Context context, OnRequestCallBackListener listener) { super(context); mListener = listener; mNewsList = new ArrayList<>(); @@ -80,7 +80,7 @@ public class ArticleAdapter extends BaseRecyclerAdapter { .getCollectionArticle(offset) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new Response>(){ + .subscribe(new Response>() { @Override public void onResponse(List response) { super.onResponse(response); @@ -88,7 +88,7 @@ public class ArticleAdapter extends BaseRecyclerAdapter { if (response.size() != 0) { mNewsList.addAll(response); - notifyItemRangeInserted(mNewsList.size() - response.size(), response.size()); + notifyItemRangeInserted(mNewsList.size() - response.size(), response.size()); } if (offset == 0 && mListener != null) { @@ -232,6 +232,7 @@ public class ArticleAdapter extends BaseRecyclerAdapter { @Override public int getItemCount() { + if (mNewsList.size() == 0) return 0; return mNewsList.size() + 1; } @@ -254,7 +255,7 @@ public class ArticleAdapter extends BaseRecyclerAdapter { NewsDetailActivity.startNewsDetailByCollection(mContext, newsEntity, "(收藏:文章)"); } }); - if (newsEntity.getThumbnail() != null && newsEntity.getThumbnail().getUrl() != null) { + if (newsEntity.getThumbnail() != null && newsEntity.getThumbnail().getUrl() != null) { ImageUtils.Companion.display(viewHolder.thumb, newsEntity.getThumbnail().getUrl().get(0)); } else { ImageUtils.Companion.display(viewHolder.thumb, "res:///" + R.drawable.collection_default_icon); diff --git a/app/src/main/java/com/gh/gamecenter/collection/ArticleFragment.java b/app/src/main/java/com/gh/gamecenter/collection/ArticleFragment.java index 4893000b4a..b2be04e56e 100644 --- a/app/src/main/java/com/gh/gamecenter/collection/ArticleFragment.java +++ b/app/src/main/java/com/gh/gamecenter/collection/ArticleFragment.java @@ -8,6 +8,7 @@ import android.support.v7.widget.RecyclerView; import android.view.View; import android.widget.LinearLayout; +import com.gc.materialdesign.views.ProgressBarCircularIndeterminate; import com.gh.base.fragment.BaseFragment; import com.gh.common.util.CollectionUtils; import com.gh.common.view.VerticalItemDecoration; @@ -37,6 +38,8 @@ public class ArticleFragment extends BaseFragment implements SwipeRefreshLayout. LinearLayout mNoConn; @BindView(R.id.reuse_none_data) LinearLayout mNoData; + @BindView(R.id.article_loading) + ProgressBarCircularIndeterminate mLoading; private ArticleAdapter mAdapter; @@ -87,6 +90,7 @@ public class ArticleFragment extends BaseFragment implements SwipeRefreshLayout. public void reconnection() { // 重新连接 mRecyclerView.setVisibility(View.VISIBLE); mNoConn.setVisibility(View.GONE); + mLoading.setVisibility(View.VISIBLE); postDelayedRunnable(runnable, 1000); } @@ -97,6 +101,7 @@ public class ArticleFragment extends BaseFragment implements SwipeRefreshLayout. mRecyclerView.setVisibility(View.VISIBLE); mNoConn.setVisibility(View.GONE); mNoData.setVisibility(View.GONE); + mLoading.setVisibility(View.VISIBLE); } @Override @@ -104,6 +109,7 @@ public class ArticleFragment extends BaseFragment implements SwipeRefreshLayout. mRefreshLayout.setRefreshing(false); mRecyclerView.setVisibility(View.GONE); mNoConn.setVisibility(View.VISIBLE); + mLoading.setVisibility(View.GONE); mNoData.setVisibility(View.GONE); } @@ -113,6 +119,7 @@ public class ArticleFragment extends BaseFragment implements SwipeRefreshLayout. mRefreshLayout.setRefreshing(false); mRecyclerView.setVisibility(View.GONE); mNoConn.setVisibility(View.GONE); + mLoading.setVisibility(View.GONE); mNoData.setVisibility(View.VISIBLE); } diff --git a/app/src/main/java/com/gh/gamecenter/collection/ToolsAdapter.java b/app/src/main/java/com/gh/gamecenter/collection/ToolsAdapter.java index 5c42baec0b..0a903b1cde 100644 --- a/app/src/main/java/com/gh/gamecenter/collection/ToolsAdapter.java +++ b/app/src/main/java/com/gh/gamecenter/collection/ToolsAdapter.java @@ -138,6 +138,7 @@ public class ToolsAdapter extends BaseRecyclerAdapter { @Override public int getItemCount() { + if (mEntityList.size() == 0) return 0; return mEntityList.size() + 1; } diff --git a/app/src/main/java/com/gh/gamecenter/collection/ToolsFragment.java b/app/src/main/java/com/gh/gamecenter/collection/ToolsFragment.java index f069ce7851..443701ebbb 100644 --- a/app/src/main/java/com/gh/gamecenter/collection/ToolsFragment.java +++ b/app/src/main/java/com/gh/gamecenter/collection/ToolsFragment.java @@ -37,6 +37,8 @@ public class ToolsFragment extends BaseFragment implements SwipeRefreshLayout.On LinearLayout mNoConn; @BindView(R.id.reuse_none_data) LinearLayout mNoData; + @BindView(R.id.tools_loading) + View mLoading; private ToolsAdapter mAdapter; @@ -85,6 +87,7 @@ public class ToolsFragment extends BaseFragment implements SwipeRefreshLayout.On public void reconnection() { // 重新连接 mRecyclerView.setVisibility(View.VISIBLE); mNoConn.setVisibility(View.GONE); + mLoading.setVisibility(View.VISIBLE); postDelayedRunnable(runnable, 1000); } @@ -95,6 +98,7 @@ public class ToolsFragment extends BaseFragment implements SwipeRefreshLayout.On mRecyclerView.setVisibility(View.VISIBLE); mNoConn.setVisibility(View.GONE); mNoData.setVisibility(View.GONE); + mLoading.setVisibility(View.GONE); } @Override @@ -103,6 +107,7 @@ public class ToolsFragment extends BaseFragment implements SwipeRefreshLayout.On mRecyclerView.setVisibility(View.GONE); mNoConn.setVisibility(View.VISIBLE); mNoData.setVisibility(View.GONE); + mLoading.setVisibility(View.GONE); } @Override @@ -112,6 +117,7 @@ public class ToolsFragment extends BaseFragment implements SwipeRefreshLayout.On mRecyclerView.setVisibility(View.GONE); mNoConn.setVisibility(View.GONE); mNoData.setVisibility(View.VISIBLE); + mLoading.setVisibility(View.GONE); } @Override diff --git a/app/src/main/java/com/gh/gamecenter/libao/LibaoNewFragment.java b/app/src/main/java/com/gh/gamecenter/libao/LibaoNewFragment.java index 2347333e06..d6fe82db65 100644 --- a/app/src/main/java/com/gh/gamecenter/libao/LibaoNewFragment.java +++ b/app/src/main/java/com/gh/gamecenter/libao/LibaoNewFragment.java @@ -275,6 +275,6 @@ public class LibaoNewFragment extends BaseFragment implements SwipeRefreshLayout LibaoEntity libaoEntity = libaoList.get(position); mAdapter.setSkipPosition(position); Intent intent = LibaoDetailActivity.getIntent(getContext(), libaoEntity, mEntrance + "+(礼包中心:最新)"); - startActivityForResult(intent, LibaoSearchFragment.LIBAO_SEARCH_REQUEST); + startActivityForResult(intent, LIBAO_NEW_REQUEST); } } diff --git a/app/src/main/java/com/gh/gamecenter/libao/LibaoSearchFragment.java b/app/src/main/java/com/gh/gamecenter/libao/LibaoSearchFragment.java index b2e5acfb21..ca6811d6c3 100644 --- a/app/src/main/java/com/gh/gamecenter/libao/LibaoSearchFragment.java +++ b/app/src/main/java/com/gh/gamecenter/libao/LibaoSearchFragment.java @@ -160,6 +160,6 @@ public class LibaoSearchFragment extends BaseFragment implements SwipeRefreshLay LibaoEntity libaoEntity = libaoList.get(position); mAdapter.setSkipPosition(position); Intent intent = LibaoDetailActivity.getIntent(getContext(), libaoEntity, mEntrance + "+(礼包中心:最新)"); - startActivityForResult(intent, LibaoSearchFragment.LIBAO_SEARCH_REQUEST); + startActivityForResult(intent, LIBAO_SEARCH_REQUEST); } } diff --git a/app/src/main/java/com/gh/gamecenter/retrofit/RetrofitManager.java b/app/src/main/java/com/gh/gamecenter/retrofit/RetrofitManager.java index b305d69563..667b593dd7 100644 --- a/app/src/main/java/com/gh/gamecenter/retrofit/RetrofitManager.java +++ b/app/src/main/java/com/gh/gamecenter/retrofit/RetrofitManager.java @@ -7,12 +7,14 @@ import com.gh.gamecenter.Injection; import com.gh.gamecenter.retrofit.service.ApiService; import com.gh.gamecenter.retrofit.service.DataService; import com.gh.gamecenter.retrofit.service.UserseaService; +import com.lightgame.utils.Utils; import java.io.File; import java.util.concurrent.TimeUnit; import okhttp3.Cache; import okhttp3.OkHttpClient; +import okhttp3.logging.HttpLoggingInterceptor; import retrofit2.Retrofit; import retrofit2.adapter.rxjava.RxJavaCallAdapterFactory; import retrofit2.converter.gson.GsonConverterFactory; @@ -38,28 +40,28 @@ public class RetrofitManager { } private RetrofitManager(Context context) { -// HttpLoggingInterceptor loggingInterceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { -// @Override -// public void log(String message) { -// //分段打印retrofit日志 -// if(message.length() > 4000) { -// for(int i=0;i 4000) { + for(int i=0;i + + - + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_tools.xml b/app/src/main/res/layout/fragment_tools.xml index 884c8dcdad..ca528cd5ae 100644 --- a/app/src/main/res/layout/fragment_tools.xml +++ b/app/src/main/res/layout/fragment_tools.xml @@ -14,6 +14,15 @@ android:layout_height = "wrap_content" /> + + + - + + \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index b288c59e78..a18b267a0c 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -288,5 +288,6 @@ 手机登录 插件 请先登录 + "查看评论(%d)