diff --git a/app/src/main/java/com/gh/common/util/ShareUtils.java b/app/src/main/java/com/gh/common/util/ShareUtils.java index 66774bf607..cc7331ec5e 100644 --- a/app/src/main/java/com/gh/common/util/ShareUtils.java +++ b/app/src/main/java/com/gh/common/util/ShareUtils.java @@ -86,17 +86,17 @@ public class ShareUtils { public IUiListener QqShareListener = new IUiListener() { @Override public void onComplete(Object o) { - Utils.toast(mContext, "分享成功"); + Utils.toast(mContext, mContext.getString(R.string.share_success_hint)); } @Override public void onError(UiError uiError) { - Utils.toast(mContext, "分享失败"); + Utils.toast(mContext, mContext.getString(R.string.share_fail_hint)); } @Override public void onCancel() { - Utils.toast(mContext, "分享已取消"); + Utils.toast(mContext, mContext.getString(R.string.share_cancel_hint)); } }; @@ -209,7 +209,7 @@ public class ShareUtils { //QQ分享 private void qqSahre() { - Utils.toast(mContext, "分享跳转中..."); + Utils.toast(mContext, mContext.getString(R.string.share_skip)); Bundle params = new Bundle(); String title; @@ -251,7 +251,7 @@ public class ShareUtils { //微信好友分享 private void wechatSahre() { - Utils.toast(mContext, "分享跳转中..."); + Utils.toast(mContext, mContext.getString(R.string.share_skip)); WXWebpageObject webpage = new WXWebpageObject(); WXMediaMessage msg = new WXMediaMessage(webpage); webpage.webpageUrl = shareUrl; @@ -363,7 +363,7 @@ public class ShareUtils { //QQ空间分享 private void qZoneSahre() { - Utils.toast(mContext, "分享跳转中..."); + Utils.toast(mContext, mContext.getString(R.string.share_skip)); Bundle params = new Bundle(); String title; @@ -409,7 +409,7 @@ public class ShareUtils { //微信朋友圈分享 private void wechatMomentsSahre() { - Utils.toast(mContext, "分享跳转中..."); + Utils.toast(mContext, mContext.getString(R.string.share_skip)); WXWebpageObject webpage = new WXWebpageObject(); WXMediaMessage msg = new WXMediaMessage(webpage); diff --git a/app/src/main/java/com/gh/gamecenter/adapter/KaiFuAdapter.java b/app/src/main/java/com/gh/gamecenter/adapter/KaiFuAdapter.java index 63ceea427d..87d093badf 100644 --- a/app/src/main/java/com/gh/gamecenter/adapter/KaiFuAdapter.java +++ b/app/src/main/java/com/gh/gamecenter/adapter/KaiFuAdapter.java @@ -26,6 +26,7 @@ import com.gh.gamecenter.KaiFuActivity; import com.gh.gamecenter.R; import com.gh.gamecenter.adapter.viewholder.FooterViewHolder; import com.gh.gamecenter.adapter.viewholder.GameTestViewHolder; +import com.gh.gamecenter.adapter.viewholder.ReuseViewHolder; import com.gh.gamecenter.entity.ApkEntity; import com.gh.gamecenter.entity.GameEntity; import com.gh.gamecenter.entity.KaiFuServerEntity; @@ -306,7 +307,7 @@ public class KaiFuAdapter extends BaseRecyclerAdapter { if (locationTop > 0) { GameEntity gameEntity = mSubjectList.get(locationTop); gameEntity.setShowTop(false); - if (gameEntity.getKaifuTimeHint() == 0) { + if (gameEntity.getKaifuTimeHint() == null) { gameEntity.setKaifuTimeHint(gameEntity.getServerEntity().getTime() * 1000); } } @@ -314,7 +315,7 @@ public class KaiFuAdapter extends BaseRecyclerAdapter { int locationBottom = mKaifuIndex + 1; if (locationBottom < mSubjectList.size()) { GameEntity gameEntity = mSubjectList.get(locationBottom); - if (gameEntity.getKaifuTimeHint() == 0) { + if (gameEntity.getKaifuTimeHint() == null) { gameEntity.setKaifuTimeHint(gameEntity.getServerEntity().getTime() * 1000); gameEntity.setShowTop(true); } @@ -405,6 +406,7 @@ public class KaiFuAdapter extends BaseRecyclerAdapter { case 100: view = new View(mContext); view.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, DisplayUtils.dip2px(mContext, 4))); + return new ReuseViewHolder(view); default: return null; } @@ -461,7 +463,7 @@ public class KaiFuAdapter extends BaseRecyclerAdapter { KaiFuUtils.setKaiFuTimeHint(holder.kaifuTop, holder.kaifuBottom, mSubjectList, position); - if (gameEntity.getKaifuTimeHint() > 0) { + if (gameEntity.getKaifuTimeHint() != null) { if (gameEntity.isShowTop()) { holder.kaifuTop.setVisibility(View.VISIBLE); holder.kaifuBottom.setVisibility(View.GONE); diff --git a/app/src/main/java/com/gh/gamecenter/entity/NewsEntity.java b/app/src/main/java/com/gh/gamecenter/entity/NewsEntity.java index cdf8bb4344..ca35ac46d9 100644 --- a/app/src/main/java/com/gh/gamecenter/entity/NewsEntity.java +++ b/app/src/main/java/com/gh/gamecenter/entity/NewsEntity.java @@ -1,8 +1,11 @@ package com.gh.gamecenter.entity; +import android.os.Parcel; +import android.os.Parcelable; + import com.google.gson.annotations.SerializedName; -public class NewsEntity { +public class NewsEntity implements Parcelable { @SerializedName(value = "_id", alternate = "article_id") private String id; @@ -126,4 +129,56 @@ public class NewsEntity { public void setPriority(int priority) { this.priority = priority; } + + + @Override + public int describeContents() { + return 0; + } + + @Override + public void writeToParcel(Parcel dest, int flags) { + dest.writeString(this.id); + dest.writeString(this.type); + dest.writeString(this.title); + dest.writeLong(this.publishOn); + dest.writeString(this.thumb); + dest.writeParcelable(this.thumbnail, flags); + dest.writeString(this.intro); + dest.writeInt(this.views); + dest.writeString(this.link); + dest.writeString(this.gameName); + dest.writeLong(this.overtime); + dest.writeInt(this.priority); + } + + public NewsEntity() { + } + + protected NewsEntity(Parcel in) { + this.id = in.readString(); + this.type = in.readString(); + this.title = in.readString(); + this.publishOn = in.readLong(); + this.thumb = in.readString(); + this.thumbnail = in.readParcelable(ThumbnailEntity.class.getClassLoader()); + this.intro = in.readString(); + this.views = in.readInt(); + this.link = in.readString(); + this.gameName = in.readString(); + this.overtime = in.readLong(); + this.priority = in.readInt(); + } + + public static final Parcelable.Creator CREATOR = new Parcelable.Creator() { + @Override + public NewsEntity createFromParcel(Parcel source) { + return new NewsEntity(source); + } + + @Override + public NewsEntity[] newArray(int size) { + return new NewsEntity[size]; + } + }; } diff --git a/app/src/main/java/com/gh/gamecenter/entity/TagEntity.java b/app/src/main/java/com/gh/gamecenter/entity/TagEntity.java index e9d6486462..fe2855b81b 100644 --- a/app/src/main/java/com/gh/gamecenter/entity/TagEntity.java +++ b/app/src/main/java/com/gh/gamecenter/entity/TagEntity.java @@ -1,7 +1,10 @@ package com.gh.gamecenter.entity; -public class TagEntity { +import android.os.Parcel; +import android.os.Parcelable; + +public class TagEntity implements Parcelable { private String name; private String icon; @@ -39,4 +42,40 @@ public class TagEntity { public void setColor(String color) { this.color = color; } + + + @Override + public int describeContents() { + return 0; + } + + @Override + public void writeToParcel(Parcel dest, int flags) { + dest.writeString(this.name); + dest.writeString(this.icon); + dest.writeString(this.des); + dest.writeString(this.color); + } + + public TagEntity() { + } + + protected TagEntity(Parcel in) { + this.name = in.readString(); + this.icon = in.readString(); + this.des = in.readString(); + this.color = in.readString(); + } + + public static final Parcelable.Creator CREATOR = new Parcelable.Creator() { + @Override + public TagEntity createFromParcel(Parcel source) { + return new TagEntity(source); + } + + @Override + public TagEntity[] newArray(int size) { + return new TagEntity[size]; + } + }; } diff --git a/app/src/main/java/com/gh/gamecenter/entity/ThumbnailEntity.java b/app/src/main/java/com/gh/gamecenter/entity/ThumbnailEntity.java index 6390ef6059..4179cf8894 100644 --- a/app/src/main/java/com/gh/gamecenter/entity/ThumbnailEntity.java +++ b/app/src/main/java/com/gh/gamecenter/entity/ThumbnailEntity.java @@ -1,11 +1,14 @@ package com.gh.gamecenter.entity; +import android.os.Parcel; +import android.os.Parcelable; + import java.util.List; /** * Created by LGT on 2016/6/16. */ -public class ThumbnailEntity { +public class ThumbnailEntity implements Parcelable { private String type; @@ -27,4 +30,34 @@ public class ThumbnailEntity { this.url = url; } + @Override + public int describeContents() { + return 0; + } + + @Override + public void writeToParcel(Parcel dest, int flags) { + dest.writeString(this.type); + dest.writeStringList(this.url); + } + + public ThumbnailEntity() { + } + + protected ThumbnailEntity(Parcel in) { + this.type = in.readString(); + this.url = in.createStringArrayList(); + } + + public static final Parcelable.Creator CREATOR = new Parcelable.Creator() { + @Override + public ThumbnailEntity createFromParcel(Parcel source) { + return new ThumbnailEntity(source); + } + + @Override + public ThumbnailEntity[] newArray(int size) { + return new ThumbnailEntity[size]; + } + }; } diff --git a/app/src/main/java/com/gh/gamecenter/subject/SubjectFragment.java b/app/src/main/java/com/gh/gamecenter/subject/SubjectFragment.java index 6c773311c4..4c7b26e42c 100644 --- a/app/src/main/java/com/gh/gamecenter/subject/SubjectFragment.java +++ b/app/src/main/java/com/gh/gamecenter/subject/SubjectFragment.java @@ -61,7 +61,7 @@ public class SubjectFragment extends BaseFragment { private String mEntrance; private String mType; private String mTagType; - private String mOrder; + private String mListOrder; // 列表排序 最新/最热 private boolean mIsOrder; private boolean mScorllTop = false; @@ -108,8 +108,7 @@ public class SubjectFragment extends BaseFragment { mName = arguments.getString("name"); mIsOrder = arguments.getBoolean("order"); mType = arguments.getString("type"); - //TODO ????? order 是 boolean - mOrder = arguments.getString("order"); + mListOrder = arguments.getString("listOrder"); mTagType = arguments.getString("tagType"); mEntrance = arguments.getString(EntranceUtils.KEY_ENTRANCE); @@ -119,7 +118,7 @@ public class SubjectFragment extends BaseFragment { subject_pb_loading.setVisibility(View.VISIBLE); subject_list.setVisibility(View.VISIBLE); reuse_no_connection.setVisibility(View.GONE); - adapter = new SubjectAdapter(getContext(), SubjectFragment.this, mType, mId, mName, mEntrance, mOrder, mTagType, mIsOrder); + adapter = new SubjectAdapter(getContext(), SubjectFragment.this, mType, mId, mName, mEntrance, mListOrder, mTagType, mIsOrder); subject_list.setAdapter(adapter); } }); @@ -130,7 +129,7 @@ public class SubjectFragment extends BaseFragment { subject_list.addItemDecoration(new VerticalItemDecoration(getContext(), 8, true)); subject_list.setHasFixedSize(true); subject_list.setLayoutManager(layoutManager); - adapter = new SubjectAdapter(getContext(), this, mType, mId, mName, mEntrance, mOrder, mTagType, mIsOrder); + adapter = new SubjectAdapter(getContext(), this, mType, mId, mName, mEntrance, mListOrder, mTagType, mIsOrder); subject_list.setAdapter(adapter); subject_list.addOnScrollListener(new RecyclerView.OnScrollListener() { @@ -279,7 +278,7 @@ public class SubjectFragment extends BaseFragment { subject_list.setVisibility(View.VISIBLE); subject_pb_loading.setVisibility(View.VISIBLE); reuse_no_connection.setVisibility(View.GONE); - adapter = new SubjectAdapter(getContext(), this, mType, mId, mName, mEntrance, mOrder, mTagType, mIsOrder); + adapter = new SubjectAdapter(getContext(), this, mType, mId, mName, mEntrance, mListOrder, mTagType, mIsOrder); subject_list.setAdapter(adapter); } } diff --git a/app/src/main/java/com/gh/gamecenter/subject/SubjectTileFragment.java b/app/src/main/java/com/gh/gamecenter/subject/SubjectTileFragment.java index 5cbf1817f7..00a68df0d0 100644 --- a/app/src/main/java/com/gh/gamecenter/subject/SubjectTileFragment.java +++ b/app/src/main/java/com/gh/gamecenter/subject/SubjectTileFragment.java @@ -55,7 +55,7 @@ public class SubjectTileFragment extends BaseFragment implements SubjectTypeAdap private String mName; private String mType; - private String mOrder; + private String mListOrder; private String mTagType; private boolean mIsTouchScreen = false; @@ -65,7 +65,7 @@ public class SubjectTileFragment extends BaseFragment implements SubjectTypeAdap public void loadData() { FragmentTransaction transaction = getChildFragmentManager().beginTransaction(); hideFragments(transaction); - alterFragment(transaction, mType + mOrder); + alterFragment(transaction, mType + mListOrder); transaction.commit(); } @@ -89,7 +89,7 @@ public class SubjectTileFragment extends BaseFragment implements SubjectTypeAdap Bundle mBundle = getActivity().getIntent().getExtras(); Bundle clone = (Bundle) mBundle.clone(); clone.putString("tagType",mTagType); - clone.putString("order", mOrder); + clone.putString("listOrder", mListOrder); clone.putString("type", mType); fragmentByTag.setArguments(clone); transaction.add(R.id.subject_content_rl, fragmentByTag, fmTag); @@ -118,7 +118,7 @@ public class SubjectTileFragment extends BaseFragment implements SubjectTypeAdap ArrayList contentTitle = arguments.getStringArrayList("contentTitle"); mType = "全部"; - mOrder = ""; + mListOrder = ""; // 设置标题 GridLayoutManager layout = new GridLayoutManager(getContext(), 4) { @@ -192,7 +192,7 @@ public class SubjectTileFragment extends BaseFragment implements SubjectTypeAdap mTabbarHotTv.setBackgroundResource(R.drawable.gamedetail_tag_select_bg); mTabbarNewTv.setTextColor(Color.BLACK); mTabbarNewTv.setBackgroundDrawable(new ColorDrawable(0)); - mOrder = ""; + mListOrder = ""; loadData(); break; case R.id.subject_tabbar_new_tv: @@ -200,7 +200,7 @@ public class SubjectTileFragment extends BaseFragment implements SubjectTypeAdap mTabbarHotTv.setBackgroundDrawable(new ColorDrawable(0)); mTabbarNewTv.setTextColor(Color.WHITE); mTabbarNewTv.setBackgroundResource(R.drawable.gamedetail_tag_unselect_bg); - mOrder = "latest"; + mListOrder = "latest"; loadData(); break; } diff --git a/app/src/main/res/layout/activity_about.xml b/app/src/main/res/layout/activity_about.xml index eb564daa38..0eda54419b 100644 --- a/app/src/main/res/layout/activity_about.xml +++ b/app/src/main/res/layout/activity_about.xml @@ -61,7 +61,7 @@ android:layout_width = "wrap_content" android:layout_height = "wrap_content" android:layout_centerVertical = "true" - android:text = "版本更新" + android:text = "@string/about_version_update" android:textColor = "@color/title" android:textSize = "17sp" /> diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml index 76a6bbfd74..7a509513e7 100644 --- a/app/src/main/res/layout/activity_login.xml +++ b/app/src/main/res/layout/activity_login.xml @@ -26,7 +26,7 @@ android:layout_marginTop = "15dp" android:drawableLeft = "@drawable/login_phone_unfocused" android:drawablePadding = "12dp" - android:hint = "输入手机号码" + android:hint = "@string/input_phone_hint" android:paddingBottom = "18dp" android:textColorHint = "@color/hint" android:textSize = "15sp" @@ -44,7 +44,7 @@ android:layout_height = "wrap_content" android:drawableLeft = "@drawable/login_password_unfocused" android:drawablePadding = "12dp" - android:hint = "输入验证码" + android:hint = "@string/input_captcha_hint" android:maxLength = "8" android:paddingBottom = "18dp" android:textColorHint = "@color/hint" @@ -60,7 +60,7 @@ android:layout_marginTop = "5dp" android:background = "@drawable/border_black_bg" android:gravity = "center" - android:text = "获取验证码" + android:text = "@string/login_get_captcha" android:textColor = "@color/title" android:textSize = "12sp" /> @@ -72,7 +72,7 @@ android:layout_marginTop = "42dp" android:background = "@drawable/login_btn_bg" android:gravity = "center" - android:text = "登录" + android:text = "@string/login" android:textColor = "@android:color/white" android:textSize = "16sp" /> @@ -95,7 +95,7 @@ android:layout_width = "wrap_content" android:layout_height = "wrap_content" android:layout_centerInParent = "true" - android:text = "还可以选择以下方式登录" + android:text = "@string/other_login_hint" android:textColor = "@color/title" android:textSize = "12sp" /> @@ -134,7 +134,7 @@ android:layout_width = "wrap_content" android:layout_height = "wrap_content" android:layout_marginTop = "8dp" - android:text = "QQ" /> + android:text = "@string/QQ" /> @@ -154,7 +154,7 @@ android:layout_width = "wrap_content" android:layout_height = "wrap_content" android:layout_marginTop = "8dp" - android:text = "微信" /> + android:text = "@string/wechat" /> @@ -174,7 +174,7 @@ android:layout_width = "wrap_content" android:layout_height = "wrap_content" android:layout_marginTop = "8dp" - android:text = "新浪微博" /> + android:text = "@string/sina_weibo" /> diff --git a/app/src/main/res/layout/fragment_personal.xml b/app/src/main/res/layout/fragment_personal.xml index fdb4b808f2..e7e30db974 100644 --- a/app/src/main/res/layout/fragment_personal.xml +++ b/app/src/main/res/layout/fragment_personal.xml @@ -86,7 +86,7 @@ android:layout_width = "wrap_content" android:layout_height = "wrap_content" android:layout_marginTop = "14dp" - android:text = "QQ" + android:text = "@string/QQ" android:textColor = "@color/title" /> @@ -125,7 +125,7 @@ android:layout_width = "wrap_content" android:layout_height = "wrap_content" android:layout_marginTop = "14dp" - android:text = "微信" + android:text = "@string/wechat" android:textColor = "@color/title" /> @@ -164,7 +164,7 @@ android:layout_width = "wrap_content" android:layout_height = "wrap_content" android:layout_marginTop = "14dp" - android:text = "新浪微博" + android:text = "@string/sina_weibo" android:textColor = "@color/title" /> diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 983eac9b98..07fc7dd3a1 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -255,5 +255,14 @@ 分享成功 分享取消 分享失败 + 输入手机号码 + 输入验证码 + 获取验证码 + 登录 + QQ + 微信 + 新浪微博 + 还可以选择以下方式登录 + 版本更新