diff --git a/app/src/main/java/com/gh/base/BaseActivity.java b/app/src/main/java/com/gh/base/BaseActivity.java index 1a63941d53..228538bd5d 100644 --- a/app/src/main/java/com/gh/base/BaseActivity.java +++ b/app/src/main/java/com/gh/base/BaseActivity.java @@ -103,7 +103,7 @@ public abstract class BaseActivity extends BaseToolBarActivity implements EasyPe public void showShare(String url, String icon, String shareTitle, String shareSummary, ShareUtils.ShareType shareType) { - ShareUtils.getInstance(this).showShareWindows(getWindow().getDecorView(), url, icon, shareTitle, shareSummary, shareType); + ShareUtils.getInstance(this).showShareWindows(this, getWindow().getDecorView(), url, icon, shareTitle, shareSummary, shareType); if (shareType == ShareUtils.ShareType.game || shareType == ShareUtils.ShareType.plugin) { DataUtils.onEvent(this, "内容分享", shareTitle + shareSummary); diff --git a/app/src/main/java/com/gh/common/util/DialogUtils.java b/app/src/main/java/com/gh/common/util/DialogUtils.java index 70b9fbfd7c..a0add433cb 100644 --- a/app/src/main/java/com/gh/common/util/DialogUtils.java +++ b/app/src/main/java/com/gh/common/util/DialogUtils.java @@ -434,9 +434,8 @@ public class DialogUtils { * @param cmListener */ - // TODO: 8/10/17 将下面几个弹窗整理在一起 - public static void showAlertDialog(Context context, String title, CharSequence message - , String positive, String negative, final ConfirmListener cmListener) { + public static void showCancelAlertDialog(Context context, String title, CharSequence message + , String positive, String negative, final ConfirmListener cmListener, final CancelListener clListener) { final Dialog dialog = new Dialog(context, R.style.GhAlertDialog); @@ -455,6 +454,9 @@ public class DialogUtils { negativeTv.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { + if (clListener != null) { + clListener.onCancel(); + } dialog.dismiss(); } }); diff --git a/app/src/main/java/com/gh/common/util/ImageUtils.kt b/app/src/main/java/com/gh/common/util/ImageUtils.kt index d3cdb1452a..7e23551625 100644 --- a/app/src/main/java/com/gh/common/util/ImageUtils.kt +++ b/app/src/main/java/com/gh/common/util/ImageUtils.kt @@ -103,6 +103,7 @@ class ImageUtils private constructor() { } companion object { + const val POST403: String = "403" fun getInstance(): ImageUtils { return Inner.anotherSingle @@ -155,6 +156,8 @@ class ImageUtils private constructor() { val statusCode = result.getInt("statusCode") if (statusCode == HttpURLConnection.HTTP_OK) { imgMap.put(result.getString("realPath"), result.getString("icon")) + } else if (statusCode == 403) { + imgMap.put(result.getString("realPath"), POST403) } } catch (e: Exception) { e.printStackTrace() 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 b503edebc5..ff8ecd5eb9 100644 --- a/app/src/main/java/com/gh/common/util/ShareUtils.java +++ b/app/src/main/java/com/gh/common/util/ShareUtils.java @@ -94,6 +94,8 @@ public class ShareUtils { private ShareType mShareType; + private Activity mActivity; + private Context mContext; //QQ或者QQ空间分享回调处理 public IUiListener QqShareListener = new IUiListener() { @@ -121,7 +123,7 @@ public class ShareUtils { mContext = context; } - public static ShareUtils getInstance(Activity context) { + public static ShareUtils getInstance(Context context) { if (sInstance == null) { sInstance = new ShareUtils(context); } @@ -144,7 +146,8 @@ public class ShareUtils { } - public void showShareWindows(View view, String url, String icon, String shareTitle, String shareSummary, ShareType shareType) { + public void showShareWindows(Activity activity, View view, String url, String icon, String shareTitle, String shareSummary, ShareType shareType) { + this.mActivity = activity; this.shareIcon = icon; this.shareUrl = url; this.mSummary = shareSummary; @@ -211,7 +214,7 @@ public class ShareUtils { } //QQ分享 - private void qqSahre() { + private void qqShare() { Utils.toast(mContext, mContext.getString(R.string.share_skip)); Bundle params = new Bundle(); @@ -231,8 +234,7 @@ public class ShareUtils { params.putString(QQShare.SHARE_TO_QQ_IMAGE_URL, shareIcon); params.putString(QQShare.SHARE_TO_QQ_APP_NAME, mContext.getString(R.string.app_name)); - mTencent.shareToQQ( - (Activity) mContext, params, QqShareListener); + mTencent.shareToQQ(mActivity, params, QqShareListener); if (mShareType != ShareType.shareGh) { popupWindow.dismiss(); @@ -240,7 +242,7 @@ public class ShareUtils { } //微信好友分享 - private void wechatSahre() { + private void wechatShare() { Utils.toast(mContext, mContext.getString(R.string.share_skip)); WXWebpageObject webpage = new WXWebpageObject(); WXMediaMessage msg = new WXMediaMessage(webpage); @@ -279,8 +281,12 @@ public class ShareUtils { @Override protected void onNewResultImpl(Bitmap bitmap) { Bitmap compressBp = compressBitmap(bitmap); - Bitmap resultBp = addBackGround(compressBp); - msg.thumbData = Util.bmpToByteArray(resultBp, true); + if (mShareType == ShareType.askNormal || mShareType == ShareType.askInvite) { + msg.thumbData = Util.bmpToByteArray(compressBp, true); + } else { + Bitmap resultBp = addBackGround(compressBp); + msg.thumbData = Util.bmpToByteArray(resultBp, true); + } mIWXAPI.sendReq(req); } @@ -338,7 +344,7 @@ public class ShareUtils { } //QQ空间分享 - private void qZoneSahre() { + private void qZoneShare() { Utils.toast(mContext, mContext.getString(R.string.share_skip)); Bundle params = new Bundle(); @@ -363,15 +369,14 @@ public class ShareUtils { params.putStringArrayList(QzoneShare.SHARE_TO_QQ_IMAGE_URL, imageUrls); params.putString(QzoneShare.SHARE_TO_QQ_APP_NAME, mContext.getString(R.string.app_name)); - mTencent.shareToQzone( - (Activity) mContext, params, QqShareListener); + mTencent.shareToQzone(mActivity, params, QqShareListener); if (mShareType != ShareType.shareGh) { popupWindow.dismiss(); } } //微信朋友圈分享 - private void wechatMomentsSahre() { + private void wechatMomentsShare() { Utils.toast(mContext, mContext.getString(R.string.share_skip)); WXWebpageObject webpage = new WXWebpageObject(); WXMediaMessage msg = new WXMediaMessage(webpage); @@ -407,7 +412,7 @@ public class ShareUtils { } //新浪微博分享 - private void sinaWeiboSahre() { + private void sinaWeiboShare() { Intent intent = WeiBoShareActivity.getWeiboshareIntent(mContext, shareUrl, shareIcon, mTitle, mSummary, mShareType.toString()); mContext.startActivity(intent); @@ -418,7 +423,7 @@ public class ShareUtils { } //短信分享 - private void shortMessageSahre() { + private void shortMessageShare() { String smsBody; switch (mShareType) { case news: @@ -485,22 +490,22 @@ public class ShareUtils { public void onClick(View v) { switch (holder.getPosition()) { case 0: - wechatSahre(); + wechatShare(); break; case 1: - wechatMomentsSahre(); + wechatMomentsShare(); break; case 2: - qqSahre(); + qqShare(); break; case 3: - qZoneSahre(); + qZoneShare(); break; case 4: - sinaWeiboSahre(); + sinaWeiboShare(); break; case 5: - shortMessageSahre(); + shortMessageShare(); break; case 6: if (mShareType == ShareType.askInvite || mShareType == ShareType.askNormal) { diff --git a/app/src/main/java/com/gh/gamecenter/AskQuestionsDetailActivity.java b/app/src/main/java/com/gh/gamecenter/AskQuestionsDetailActivity.java index 05380f8ff5..2b61c3e1ba 100644 --- a/app/src/main/java/com/gh/gamecenter/AskQuestionsDetailActivity.java +++ b/app/src/main/java/com/gh/gamecenter/AskQuestionsDetailActivity.java @@ -97,7 +97,7 @@ public class AskQuestionsDetailActivity extends BaseActivity implements Fragment if (TextUtils.isEmpty(description)) { description = getString(R.string.ask_share_default_summary); } - ShareUtils.getInstance(this).showShareWindows(view, "http://www.ghzs.com/qa/xjqxz" + ShareUtils.getInstance(this).showShareWindows(this, view, "http://www.ghzs.com/qa/xjqxz" , shreIcon , getString(R.string.ask_share_questions_title, data.getTitle(), data.getAnswersCount()) , description, ShareUtils.ShareType.askNormal); diff --git a/app/src/main/java/com/gh/gamecenter/DownloadManagerActivity.java b/app/src/main/java/com/gh/gamecenter/DownloadManagerActivity.java index 832bc33aa4..61c839a42e 100644 --- a/app/src/main/java/com/gh/gamecenter/DownloadManagerActivity.java +++ b/app/src/main/java/com/gh/gamecenter/DownloadManagerActivity.java @@ -4,6 +4,7 @@ import android.content.Context; import android.content.Intent; import android.os.Bundle; +import com.gh.base.fragment.BaseFragment_ViewPager; import com.gh.common.util.EntranceUtils; import com.gh.gamecenter.download.DownloadFragment; @@ -31,6 +32,17 @@ public class DownloadManagerActivity extends NormalActivity { return getIntent(context, DownloadFragment.class, bundle); } + public static Intent getDownloadMangerIntent(Context context, int position, String entrance) { +// Intent intent = new Intent(context, DownloadManagerActivity.class); +// intent.putExtra(EntranceUtils.KEY_URL, url); +// intent.putExtra(EntranceUtils.KEY_ENTRANCE, entrance); + Bundle bundle = new Bundle(); + bundle.putString(EntranceUtils.KEY_ENTRANCE, entrance); + bundle.putInt(BaseFragment_ViewPager.ARGS_INDEX, position); + return getIntent(context, DownloadFragment.class, bundle); + } + + // public static void startDownloadManagerActivity(Context context, String url, String entrance) { // Intent intent = new Intent(context, DownloadManagerActivity.class); // intent.putExtra(EntranceUtils.KEY_URL, url); diff --git a/app/src/main/java/com/gh/gamecenter/ShareGhActivity.java b/app/src/main/java/com/gh/gamecenter/ShareGhActivity.java index 0df6554f87..d9da3ad5aa 100644 --- a/app/src/main/java/com/gh/gamecenter/ShareGhActivity.java +++ b/app/src/main/java/com/gh/gamecenter/ShareGhActivity.java @@ -67,7 +67,7 @@ public class ShareGhActivity extends BaseActivity { mGhAddress.setText(Html.fromHtml("" + "www.ghzs.com" + "")); QRCodeUtils.setQRCode(this, getString(R.string.gh_website_url_100), mGhQrcode); - ShareUtils.getInstance(this).showShareWindows(mShareRl, getString(R.string.gh_website_url_300) + ShareUtils.getInstance(this).showShareWindows(this, mShareRl, getString(R.string.gh_website_url_300) , getString(R.string.gh_icon_url), "玩手游不用肝的感觉真好" , "绿色安全的手游加速助手", ShareUtils.ShareType.shareGh); } diff --git a/app/src/main/java/com/gh/gamecenter/WeiBoShareActivity.java b/app/src/main/java/com/gh/gamecenter/WeiBoShareActivity.java index c54d22d7f3..4024093c2d 100644 --- a/app/src/main/java/com/gh/gamecenter/WeiBoShareActivity.java +++ b/app/src/main/java/com/gh/gamecenter/WeiBoShareActivity.java @@ -89,7 +89,13 @@ public class WeiBoShareActivity extends Activity implements WbShareCallback { protected void onNewResultImpl(Bitmap bitmap) { Utils.log("分享获取bitmap成功,准备分享"); Bitmap compressBp = ShareUtils.compressBitmap(bitmap); - Bitmap bgBitmap = ShareUtils.getInstance(WeiBoShareActivity.this).addBackGround(compressBp); + Bitmap bgBitmap; + + if (ShareUtils.ShareType.askInvite.name().equals(mShareType) || ShareUtils.ShareType.askNormal.name().equals(mShareType)) { + bgBitmap = compressBp; + } else { + bgBitmap = ShareUtils.getInstance(WeiBoShareActivity.this).addBackGround(compressBp); + } TextObject textObject = new TextObject(); diff --git a/app/src/main/java/com/gh/gamecenter/ask/AskAnswerDetailFragment.java b/app/src/main/java/com/gh/gamecenter/ask/AskAnswerDetailFragment.java index 08683296f6..e79f1b6026 100644 --- a/app/src/main/java/com/gh/gamecenter/ask/AskAnswerDetailFragment.java +++ b/app/src/main/java/com/gh/gamecenter/ask/AskAnswerDetailFragment.java @@ -133,7 +133,7 @@ public class AskAnswerDetailFragment extends NormalFragment { } } Intent intent = ViewImageActivity.getViewImageIntent(getContext(), mAnswersImgs, current, - mEntrance + "+(答案详情[" + mTitle.getText().toString() + "])"); + mEntrance + "+(回答详情[" + mTitle.getText().toString() + "])"); startActivity(intent); } } @@ -164,7 +164,7 @@ public class AskAnswerDetailFragment extends NormalFragment { shareSummary = getString(R.string.ask_share_default_summary); } - ShareUtils.getInstance(getActivity()).showShareWindows(getView(), "http://www.ghzs.com/qa/xjqxz" + ShareUtils.getInstance(getContext()).showShareWindows(getActivity(), getView(), "http://www.ghzs.com/qa/xjqxz" , shareIcon , getString(R.string.ask_share_answers_title, mDetailEntity.getUser().getName(), mDetailEntity.getQuestion().getTitle(), mDetailEntity.getVote()) , shareSummary, ShareUtils.ShareType.askNormal); diff --git a/app/src/main/java/com/gh/gamecenter/ask/QuestionsEditFragment.java b/app/src/main/java/com/gh/gamecenter/ask/QuestionsEditFragment.java index e6c7908b44..2663f5ff39 100644 --- a/app/src/main/java/com/gh/gamecenter/ask/QuestionsEditFragment.java +++ b/app/src/main/java/com/gh/gamecenter/ask/QuestionsEditFragment.java @@ -31,8 +31,8 @@ import com.gh.common.util.EntranceUtils; import com.gh.common.util.GsonUtils; import com.gh.common.util.ImageUtils; import com.gh.gamecenter.AskQuestionsDetailActivity; +import com.gh.gamecenter.NewsDetailActivity; import com.gh.gamecenter.R; -import com.gh.gamecenter.WebActivity; import com.gh.gamecenter.ask.entity.QuestionsDetailEntity; import com.gh.gamecenter.manager.UserManager; import com.gh.gamecenter.normal.NormalFragment; @@ -147,7 +147,10 @@ public class QuestionsEditFragment extends NormalFragment { super.onViewCreated(view, savedInstanceState); setNavigationTitle(UserManager.getInstance().getCommunityName(getContext())); mPicRv.setLayoutManager(new LinearLayoutManager(getContext(), RecyclerView.HORIZONTAL, false)); - if (!TextUtils.isEmpty(mSearchKey)) mTitle.setText(mSearchKey); + if (!TextUtils.isEmpty(mSearchKey)) { + mTitle.setText(mSearchKey); + mTitle.setSelection(mSearchKey.length()); + } // 意见反馈上传图片列表 mPicRv.setLayoutManager(new GridLayoutManager(getContext(), 5) { @@ -171,7 +174,8 @@ public class QuestionsEditFragment extends NormalFragment { mPostDialog.show(getChildFragmentManager(), null); CheckLoginUtils.checkLogin(getContext(), () -> { - ImageUtils.Companion.postImageArr(getContext(), mAdapter.getFileList(), new ImageUtils.OnPostImageListener() { + List imgList = mAdapter.getFileList(); + ImageUtils.Companion.postImageArr(getContext(), imgList, new ImageUtils.OnPostImageListener() { @Override public void postError() { mPostDialog.dismissAllowingStateLoss(); @@ -180,8 +184,9 @@ public class QuestionsEditFragment extends NormalFragment { @Override public void postSuccess(@NotNull HashMap imgMap) { List imgs = new ArrayList<>(); - for (String s : imgMap.keySet()) { - imgs.add(imgMap.get(s)); + for (String s : imgList) { + String img = imgMap.get(s); + if (!TextUtils.isEmpty(img)) imgs.add(img); } postQuestions(imgs); } @@ -190,7 +195,8 @@ public class QuestionsEditFragment extends NormalFragment { }); break; case R.id.questionsedit_tips: - startActivity(WebActivity.getIntentByUrl(getContext(), getString(R.string.questionsedit_tips_url))); +// startActivity(WebActivity.getIntentByUrl(getContext(), getString(R.string.questionsedit_tips_url))); + startActivity(NewsDetailActivity.getIntentById(getContext(), "5a4e14a1d53f8b26008b45d0", "(问题编辑)")); // todo break; } } @@ -246,7 +252,7 @@ public class QuestionsEditFragment extends NormalFragment { try { JSONObject object = new JSONObject(response.string()); if (getActivity() != null) { - Intent intent = AskQuestionsDetailActivity.getIntent(getContext(), object.getString("_id"), "(答案编辑)"); + Intent intent = AskQuestionsDetailActivity.getIntent(getContext(), object.getString("_id"), "(回答编辑)"); startActivity(intent); getActivity().finish(); } diff --git a/app/src/main/java/com/gh/gamecenter/ask/myask/MyAnswerFragment.java b/app/src/main/java/com/gh/gamecenter/ask/myask/MyAnswerFragment.java index beeb8212d3..fcf18beffc 100644 --- a/app/src/main/java/com/gh/gamecenter/ask/myask/MyAnswerFragment.java +++ b/app/src/main/java/com/gh/gamecenter/ask/myask/MyAnswerFragment.java @@ -51,7 +51,7 @@ public class MyAnswerFragment extends ListFragment { @Override public void onListClick(View view, int position, Object data) { List entityList; - String tracers = mEntrance + "+(我的答案)"; + String tracers = mEntrance + "+(我的回答)"; switch (view.getId()) { case R.id.footerview_item: if (mAdapter.isNetworkError()) { diff --git a/app/src/main/java/com/gh/gamecenter/ask/questionsdetail/AnswerEditFragment.java b/app/src/main/java/com/gh/gamecenter/ask/questionsdetail/AnswerEditFragment.java index 16ab9c9ed8..fae5f7e95f 100644 --- a/app/src/main/java/com/gh/gamecenter/ask/questionsdetail/AnswerEditFragment.java +++ b/app/src/main/java/com/gh/gamecenter/ask/questionsdetail/AnswerEditFragment.java @@ -244,7 +244,7 @@ public class AnswerEditFragment extends NormalFragment { } private void showPacthBackDialog() { - DialogUtils.showAlertDialog(getActivity(), "提示", "确定放弃修改?已修改的内容将丢失" + DialogUtils.showCancelAlertDialog(getActivity(), "提示", "确定放弃修改?已修改的内容将丢失" , "继续写", " 确定", null, new DialogUtils.CancelListener() { @Override public void onCancel() { @@ -254,7 +254,7 @@ public class AnswerEditFragment extends NormalFragment { } private void showEditBackDialog() { - DialogUtils.showAlertDialog(getActivity(), "提示", "确定要退出吗?退出后答案将保存到草稿箱" + DialogUtils.showCancelAlertDialog(getActivity(), "提示", "确定要退出吗?退出后回答将保存到草稿箱" , "继续写", " 退出", null, new DialogUtils.CancelListener() { @Override public void onCancel() { @@ -320,6 +320,11 @@ public class AnswerEditFragment extends NormalFragment { mEditContent.setHtml(drafts, false); mCacheAnswerContent = drafts; } + + String answerId = object.getString("answer_id"); + if (!TextUtils.isEmpty(answerId)) { // answerId不为空 表示已经提交过答案了 + mAnswerId = answerId; + } } catch (Exception e) { e.printStackTrace(); } diff --git a/app/src/main/java/com/gh/gamecenter/ask/questionsdetail/AnswerFoldFragment.java b/app/src/main/java/com/gh/gamecenter/ask/questionsdetail/AnswerFoldFragment.java index 0043825b37..a2e23395cc 100644 --- a/app/src/main/java/com/gh/gamecenter/ask/questionsdetail/AnswerFoldFragment.java +++ b/app/src/main/java/com/gh/gamecenter/ask/questionsdetail/AnswerFoldFragment.java @@ -7,9 +7,9 @@ import android.view.View; import com.gh.common.util.EntranceUtils; import com.gh.common.view.VerticalItemDecoration; +import com.gh.gamecenter.NewsDetailActivity; import com.gh.gamecenter.NormalActivity; import com.gh.gamecenter.R; -import com.gh.gamecenter.WebActivity; import com.gh.gamecenter.ask.AskAnswerDetailFragment; import com.gh.gamecenter.ask.entity.AnswerEntity; import com.gh.gamecenter.baselist.ListAdapter; @@ -56,7 +56,9 @@ public class AnswerFoldFragment extends ListFragment { if (getArguments() != null) mQuestionsId = getArguments().getString(EntranceUtils.KEY_QUESTIONS_ID); super.onCreate(savedInstanceState); - mFlodHint.setOnClickListener((v) -> startActivity(WebActivity.getIntentByUrl(getContext(), getString(R.string.answer_fold_tips_url)))); +// startActivity(WebActivity.getIntentByUrl(getContext(), getString(R.string.answer_fold_tips_url))); + mFlodHint.setOnClickListener((v) -> startActivity(NewsDetailActivity.getIntentById(getContext(), + "5a50a008d53f8b23008b465a", "(折叠答案)"))); // todo } @Override @@ -89,7 +91,7 @@ public class AnswerFoldFragment extends ListFragment { AnswerEntity entity = entityList.get(position); Bundle bundle = new Bundle(); bundle.putString(EntranceUtils.KEY_ANSWER_ID, entity.getId()); - bundle.putString(EntranceUtils.KEY_ENTRANCE, mEntrance + "+(折叠答案)"); + bundle.putString(EntranceUtils.KEY_ENTRANCE, mEntrance + "+(折叠回答)"); NormalActivity.startFragment(getContext(), AskAnswerDetailFragment.class, bundle); break; } diff --git a/app/src/main/java/com/gh/gamecenter/ask/questionsdetail/QuestionsInviteFragment.java b/app/src/main/java/com/gh/gamecenter/ask/questionsdetail/QuestionsInviteFragment.java index 9762ff48bf..599e06505a 100644 --- a/app/src/main/java/com/gh/gamecenter/ask/questionsdetail/QuestionsInviteFragment.java +++ b/app/src/main/java/com/gh/gamecenter/ask/questionsdetail/QuestionsInviteFragment.java @@ -102,7 +102,7 @@ public class QuestionsInviteFragment extends ListFragment { if (TextUtils.isEmpty(description)) { description = getString(R.string.ask_share_default_summary); } - ShareUtils.getInstance(getActivity()).showShareWindows(view, "http://www.ghzs.com/qa/xjqxz" + ShareUtils.getInstance(getContext()).showShareWindows(getActivity(), view, "http://www.ghzs.com/qa/xjqxz" , shreIcon, getString(R.string.ask_share_invite_title, userName, mQuestionsDetailEntity.getTitle()) , description, ShareUtils.ShareType.askInvite); diff --git a/app/src/main/java/com/gh/gamecenter/ask/search/AskSearchFragment.java b/app/src/main/java/com/gh/gamecenter/ask/search/AskSearchFragment.java index d2a5d1ea3e..8d7cbaba85 100644 --- a/app/src/main/java/com/gh/gamecenter/ask/search/AskSearchFragment.java +++ b/app/src/main/java/com/gh/gamecenter/ask/search/AskSearchFragment.java @@ -176,6 +176,7 @@ public class AskSearchFragment extends ListFragment { } public void search(String searchKey) { + mSearchKey = searchKey; if (TextUtils.isEmpty(searchKey)) { // 恢复默认状态 mReuseNoConn.setVisibility(View.GONE); mReuseNoData.setVisibility(View.GONE); @@ -185,7 +186,6 @@ public class AskSearchFragment extends ListFragment { } postLog(true); mAdapter.setSearchKey(searchKey); - mSearchKey = searchKey; onRefresh(); if (mSearchHint.getVisibility() == View.GONE) { diff --git a/app/src/main/java/com/gh/gamecenter/baselist/ListRepository.java b/app/src/main/java/com/gh/gamecenter/baselist/ListRepository.java index 9a839b402e..0f2361aa2a 100644 --- a/app/src/main/java/com/gh/gamecenter/baselist/ListRepository.java +++ b/app/src/main/java/com/gh/gamecenter/baselist/ListRepository.java @@ -58,7 +58,7 @@ public class ListRepository { public void onResponse(List response) { super.onResponse(response); int size = response.size(); - if (size == 0) { + if (size == 0 && mListOffset == 0) { mLoadListener.onLoadEmpty(); } else { if (size < PAGE_SIZE) { diff --git a/app/src/main/java/com/gh/gamecenter/db/DatabaseHelper.java b/app/src/main/java/com/gh/gamecenter/db/DatabaseHelper.java index 6c5644c6e9..39021cf061 100644 --- a/app/src/main/java/com/gh/gamecenter/db/DatabaseHelper.java +++ b/app/src/main/java/com/gh/gamecenter/db/DatabaseHelper.java @@ -6,6 +6,7 @@ import android.support.v4.util.ArrayMap; import com.gh.gamecenter.db.info.AppRunTimeInfo; import com.gh.gamecenter.db.info.AppTrafficInfo; +import com.gh.gamecenter.db.info.GameTrendsInfo; import com.gh.gamecenter.db.info.InstallInfo; import com.gh.gamecenter.db.info.DataCollectionInfo; import com.gh.gamecenter.db.info.FilterInfo; @@ -23,7 +24,7 @@ import java.sql.SQLException; public class DatabaseHelper extends OrmLiteSqliteOpenHelper { private static final String DATABASE_NAME = "gh_assist.db"; - private static final int DATABASE_VERSION = 10; + private static final int DATABASE_VERSION = 11; private static DatabaseHelper instance; private ArrayMap daos = new ArrayMap<>(); @@ -61,6 +62,7 @@ public class DatabaseHelper extends OrmLiteSqliteOpenHelper { TableUtils.createTable(connectionSource, AppRunTimeInfo.class); TableUtils.createTable(connectionSource, PackageInfo.class); TableUtils.createTable(connectionSource, AppTrafficInfo.class); + TableUtils.createTable(connectionSource, GameTrendsInfo.class); } catch (SQLException e) { e.printStackTrace(); } @@ -78,6 +80,7 @@ public class DatabaseHelper extends OrmLiteSqliteOpenHelper { TableUtils.dropTable(connectionSource, AppRunTimeInfo.class, true); TableUtils.dropTable(connectionSource, PackageInfo.class, true); TableUtils.dropTable(connectionSource, AppTrafficInfo.class, true); + TableUtils.dropTable(connectionSource, GameTrendsInfo.class, true); onCreate(database, connectionSource); } catch (SQLException e) { e.printStackTrace(); diff --git a/app/src/main/java/com/gh/gamecenter/db/GameTrendsDao.java b/app/src/main/java/com/gh/gamecenter/db/GameTrendsDao.java new file mode 100644 index 0000000000..d29c518386 --- /dev/null +++ b/app/src/main/java/com/gh/gamecenter/db/GameTrendsDao.java @@ -0,0 +1,49 @@ +package com.gh.gamecenter.db; + +import android.content.Context; + +import com.gh.gamecenter.db.info.GameTrendsInfo; +import com.j256.ormlite.dao.Dao; + +import java.sql.SQLException; + +/** + * Created by khy on 9/01/18. + */ + +public class GameTrendsDao { + + private DatabaseHelper helper; + private Dao dao; + + public GameTrendsDao(Context context) { + try { + helper = DatabaseHelper.getHelper(context); + dao = helper.getDao(GameTrendsInfo.class); + } catch (SQLException e) { + e.printStackTrace(); + } + } + + + public String findByUserId(String userId) { + try { + GameTrendsInfo gameTrendsInfo = dao.queryForId(userId); + if (gameTrendsInfo != null) { + return gameTrendsInfo.getUnreadId(); + } + return null; + } catch (SQLException e) { + e.printStackTrace(); + } + return null; + } + + public void add(GameTrendsInfo info) { + try { + dao.create(info); + } catch (SQLException e) { + e.printStackTrace(); + } + } +} diff --git a/app/src/main/java/com/gh/gamecenter/db/info/GameTrendsInfo.java b/app/src/main/java/com/gh/gamecenter/db/info/GameTrendsInfo.java new file mode 100644 index 0000000000..f44ccb609a --- /dev/null +++ b/app/src/main/java/com/gh/gamecenter/db/info/GameTrendsInfo.java @@ -0,0 +1,41 @@ +package com.gh.gamecenter.db.info; + +import com.j256.ormlite.field.DatabaseField; + +/** + * Created by khy on 9/01/18. + */ + +public class GameTrendsInfo { + + @DatabaseField(id = true, columnName = "userId") + private String userId; + + + @DatabaseField(columnName = "unreadId") + private String unreadId; + + public GameTrendsInfo() { + } + + public GameTrendsInfo(String userId, String unreadId) { + this.userId = userId; + this.unreadId = unreadId; + } + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } + + public String getUnreadId() { + return unreadId; + } + + public void setUnreadId(String unreadId) { + this.unreadId = unreadId; + } +} diff --git a/app/src/main/java/com/gh/gamecenter/discover/DiscoverFragment.java b/app/src/main/java/com/gh/gamecenter/discover/DiscoverFragment.java new file mode 100644 index 0000000000..979d298697 --- /dev/null +++ b/app/src/main/java/com/gh/gamecenter/discover/DiscoverFragment.java @@ -0,0 +1,147 @@ +package com.gh.gamecenter.discover; + +import android.content.Intent; +import android.os.Bundle; +import android.support.annotation.Nullable; +import android.view.View; +import android.widget.ImageView; +import android.widget.RelativeLayout; + +import com.facebook.drawee.view.SimpleDraweeView; +import com.gh.base.fragment.BaseFragment; +import com.gh.common.util.ImageUtils; +import com.gh.gamecenter.CleanApkActivity; +import com.gh.gamecenter.DownloadManagerActivity; +import com.gh.gamecenter.LibaoActivity; +import com.gh.gamecenter.NormalActivity; +import com.gh.gamecenter.R; +import com.gh.gamecenter.db.GameTrendsDao; +import com.gh.gamecenter.db.info.GameTrendsInfo; +import com.gh.gamecenter.entity.ConcernEntity; +import com.gh.gamecenter.eventbus.EBReuse; +import com.gh.gamecenter.info.ConcernFragment; +import com.gh.gamecenter.info.InfoWrapperFragment; +import com.gh.gamecenter.manager.UserManager; +import com.gh.gamecenter.retrofit.Response; +import com.gh.gamecenter.retrofit.RetrofitManager; + +import org.greenrobot.eventbus.Subscribe; +import org.greenrobot.eventbus.ThreadMode; + +import java.util.List; + +import butterknife.BindView; +import butterknife.OnClick; +import rx.android.schedulers.AndroidSchedulers; +import rx.schedulers.Schedulers; + +import static com.gh.gamecenter.personal.PersonalFragment.LOGIN_TAG; +import static com.gh.gamecenter.personal.PersonalFragment.LOGOUT_TAG; + +/** + * Created by khy on 9/01/18. + */ + +public class DiscoverFragment extends BaseFragment { + + @BindView(R.id.discover_game_trends_icon) + ImageView mDiscoverGameTrendsIcon; + @BindView(R.id.discover_game_unread) + RelativeLayout mDiscoverGameUnread; + @BindView(R.id.discover_game_trends) + RelativeLayout mDiscoverGameTrends; + @BindView(R.id.discover_info) + RelativeLayout mDiscoverInfo; + @BindView(R.id.discover_libao) + RelativeLayout mDiscoverLibao; + @BindView(R.id.discover_kuaichuan) + RelativeLayout mDiscoverKuaichuan; + @BindView(R.id.discover_apk_cleaner) + RelativeLayout mDiscoverApkCleaner; + @BindView(R.id.login_message_hint) + View mLoginMessageHint; + @BindView(R.id.discover_info_icon) + ImageView mDiscoverInfoIcon; + @BindView(R.id.discover_libao_icon) + ImageView mDiscoverLibaoIcon; + @BindView(R.id.discover_kuaichuan_icon) + ImageView mDiscoverKuaichuanIcon; + @BindView(R.id.discover_apk_cleaner_icon) + ImageView mDiscoverApkCleanerIcon; + @BindView(R.id.discover_game_unread_icon) + SimpleDraweeView mDiscoverGameUnreadIcon; + + private ConcernEntity mConcernEntity; + + private GameTrendsDao mGameTrendsDao; + + @Override + protected int getLayoutId() { + return R.layout.fragment_discover; + } + + @Override + public void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + mGameTrendsDao = new GameTrendsDao(getContext()); + } + + @OnClick({R.id.discover_game_trends, R.id.discover_info, R.id.discover_libao, R.id.discover_kuaichuan, R.id.discover_apk_cleaner}) + public void onViewClicked(View view) { + switch (view.getId()) { + case R.id.discover_game_trends: + if (mDiscoverGameUnread.getVisibility() == View.VISIBLE) { + mDiscoverGameUnread.setVisibility(View.GONE); + mGameTrendsDao.add(new GameTrendsInfo(UserManager.getInstance().getUserId(), mConcernEntity.getId())); + } + NormalActivity.startFragment(getContext(), ConcernFragment.class); + break; + case R.id.discover_info: + NormalActivity.startFragment(getContext(), InfoWrapperFragment.class); + break; + case R.id.discover_libao: + Intent intent = LibaoActivity.getIntent(getContext(), "(发现:礼包)"); + startActivity(intent); + break; + case R.id.discover_kuaichuan: + startActivity(DownloadManagerActivity.getDownloadMangerIntent(getContext(), 2, "(发现:免流量传送)")); + break; + case R.id.discover_apk_cleaner: + startActivity(CleanApkActivity.getIntent(getContext())); + break; + } + } + + private void getConcernData() { + RetrofitManager.getInstance(getContext()).getApi() + .getZiXunConcern(0) + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(new Response>() { + @Override + public void onResponse(List response) { + super.onResponse(response); + if (response.size() > 0) { + mConcernEntity = response.get(0); + String unreadId = mGameTrendsDao.findByUserId(UserManager.getInstance().getUserId()); + if (unreadId == null || !unreadId.equals(mConcernEntity.getId())) { + ImageUtils.Companion.display(mDiscoverGameUnreadIcon, mConcernEntity.getGameIcon()); + mDiscoverGameUnread.setVisibility(View.VISIBLE); + } + } + } + + }); + } + + // 登录事件 + @Subscribe(threadMode = ThreadMode.MAIN) + public void onEventMainThread(EBReuse reuse) { + if (reuse.getType().equals(LOGIN_TAG)) { // 登入 + getConcernData(); + } else if (reuse.getType().equals(LOGOUT_TAG)) { + mDiscoverGameUnread.setVisibility(View.GONE); + } + } + +} diff --git a/app/src/main/java/com/gh/gamecenter/fragment/MainWrapperFragment.java b/app/src/main/java/com/gh/gamecenter/fragment/MainWrapperFragment.java index 37f7c06dd9..11f658791c 100644 --- a/app/src/main/java/com/gh/gamecenter/fragment/MainWrapperFragment.java +++ b/app/src/main/java/com/gh/gamecenter/fragment/MainWrapperFragment.java @@ -9,11 +9,11 @@ import com.gh.base.SearchBarHint; import com.gh.base.fragment.BaseFragment_ViewPager_Checkable; import com.gh.gamecenter.R; import com.gh.gamecenter.ask.AskFragment; +import com.gh.gamecenter.discover.DiscoverFragment; import com.gh.gamecenter.eventbus.EBReuse; import com.gh.gamecenter.eventbus.EBSkip; import com.gh.gamecenter.eventbus.EBUISwitch; import com.gh.gamecenter.message.MessageCenterFragment; -import com.gh.gamecenter.info.InfoToolWrapperFragment; import com.gh.gamecenter.personal.PersonalFragment; import com.gh.gamecenter.retrofit.Response; import com.gh.gamecenter.retrofit.RetrofitManager; @@ -69,7 +69,7 @@ public class MainWrapperFragment extends BaseFragment_ViewPager_Checkable { protected void initFragmentList(List fragments) { fragments.add(new GameWrapperFragment()); fragments.add(new AskFragment()); - fragments.add(new InfoToolWrapperFragment()); + fragments.add(new DiscoverFragment()); fragments.add(new PersonalFragment()); } diff --git a/app/src/main/java/com/gh/gamecenter/info/ConcernAdapter.java b/app/src/main/java/com/gh/gamecenter/info/ConcernAdapter.java index e7c9c32181..fc8822f470 100644 --- a/app/src/main/java/com/gh/gamecenter/info/ConcernAdapter.java +++ b/app/src/main/java/com/gh/gamecenter/info/ConcernAdapter.java @@ -86,6 +86,7 @@ class ConcernAdapter extends BaseRecyclerAdapter { isNetworkError = false; isOver = false; isLoading = false; + addList(0); } // 加载数据 diff --git a/app/src/main/java/com/gh/gamecenter/info/ConcernFragment.java b/app/src/main/java/com/gh/gamecenter/info/ConcernFragment.java index bf86b7cc04..d0cce293d8 100644 --- a/app/src/main/java/com/gh/gamecenter/info/ConcernFragment.java +++ b/app/src/main/java/com/gh/gamecenter/info/ConcernFragment.java @@ -17,7 +17,6 @@ import android.widget.TextView; import com.facebook.drawee.view.SimpleDraweeView; import com.gc.materialdesign.views.ProgressBarCircularIndeterminate; -import com.gh.base.fragment.BaseFragment; import com.gh.common.util.ApkActiveUtils; import com.gh.common.util.CheckLoginUtils; import com.gh.common.util.ConcernUtils; @@ -41,10 +40,9 @@ import com.gh.gamecenter.entity.LibaoEntity; import com.gh.gamecenter.entity.LibaoStatusEntity; import com.gh.gamecenter.entity.UserDataEntity; import com.gh.gamecenter.entity.UserDataLibaoEntity; -import com.gh.gamecenter.eventbus.EBConcernChanged; import com.gh.gamecenter.eventbus.EBNetworkState; -import com.gh.gamecenter.eventbus.EBUISwitch; import com.gh.gamecenter.manager.InstallManager; +import com.gh.gamecenter.normal.NormalFragment; import com.gh.gamecenter.retrofit.ObservableUtil; import com.gh.gamecenter.retrofit.Response; import com.gh.gamecenter.retrofit.RetrofitManager; @@ -73,7 +71,7 @@ import rx.schedulers.Schedulers; * Created by khy on 2016/8/15. * 资讯-关注界面 */ -public class ConcernFragment extends BaseFragment implements SwipeRefreshLayout.OnRefreshListener { +public class ConcernFragment extends NormalFragment implements SwipeRefreshLayout.OnRefreshListener { @BindView(R.id.news1_srl_refresh) SwipeRefreshLayout refreshLayout; @@ -120,6 +118,7 @@ public class ConcernFragment extends BaseFragment implements SwipeRefreshLayout. public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); + setNavigationTitle(R.string.discover_game_trends); recommendGameList = new ArrayList<>(); installGameList = new ArrayList<>(); mInstallManager = new InstallManager(getActivity()); @@ -488,30 +487,30 @@ public class ConcernFragment extends BaseFragment implements SwipeRefreshLayout. postDelayedRunnable(mRunnable, 1000); } - // Fragment界面切换事件 - @Subscribe(threadMode = ThreadMode.MAIN) - public void onEventMainThread(EBUISwitch swith) { - if (InfoToolWrapperFragment.EB_NEWSFRAGMENT_TAG.equals(swith.getFrom())) { - if (swith.getPosition() == 1) { - if (loadingLayout.getVisibility() == View.VISIBLE) { - mAdapter.addList(0); - } - } - } - } +// // Fragment界面切换事件 +// @Subscribe(threadMode = ThreadMode.MAIN) +// public void onEventMainThread(EBUISwitch swith) { +// if (InfoToolWrapperFragment.EB_NEWSFRAGMENT_TAG.equals(swith.getFrom())) { +// if (swith.getPosition() == 1) { +// if (loadingLayout.getVisibility() == View.VISIBLE) { +// mAdapter.addList(0); +// } +// } +// } +// } - // 关注事件 - @Subscribe(threadMode = ThreadMode.MAIN) - public void onEventMainThread(EBConcernChanged changed) { - emptyLayout.setVisibility(View.GONE); - refreshLayout.setEnabled(true); - refreshLayout.setRefreshing(true); - recyclerView.setVisibility(View.VISIBLE); - loadingLayout.setVisibility(View.VISIBLE); - mAdapter = new ConcernAdapter(getContext(), this, this); - recyclerView.setAdapter(mAdapter); - mAdapter.addList(0); - } +// // 关注事件 +// @Subscribe(threadMode = ThreadMode.MAIN) +// public void onEventMainThread(EBConcernChanged changed) { +// emptyLayout.setVisibility(View.GONE); +// refreshLayout.setEnabled(true); +// refreshLayout.setRefreshing(true); +// recyclerView.setVisibility(View.VISIBLE); +// loadingLayout.setVisibility(View.VISIBLE); +// mAdapter = new ConcernAdapter(getContext(), this, this); +// recyclerView.setAdapter(mAdapter); +// mAdapter.addList(0); +// } @Override public void onRefresh() { diff --git a/app/src/main/java/com/gh/gamecenter/info/InfoWrapperFragment.java b/app/src/main/java/com/gh/gamecenter/info/InfoWrapperFragment.java index f9e9c1621a..25ace541fc 100644 --- a/app/src/main/java/com/gh/gamecenter/info/InfoWrapperFragment.java +++ b/app/src/main/java/com/gh/gamecenter/info/InfoWrapperFragment.java @@ -71,7 +71,7 @@ public class InfoWrapperFragment extends BaseFragment_ViewPager_Checkable { @Override protected void initFragmentList(List fragments) { fragments.add(new InfoFragment()); - fragments.add(new ConcernFragment()); +// fragments.add(new ConcernFragment()); fragments.add(new StrategyFragment()); fragments.add(new OriginalFragment()); } @@ -81,13 +81,14 @@ public class InfoWrapperFragment extends BaseFragment_ViewPager_Checkable { super.onCreate(savedInstanceState); DisplayMetrics outMetrics = new DisplayMetrics(); getActivity().getWindowManager().getDefaultDisplay().getMetrics(outMetrics); - mWidth = outMetrics.widthPixels / 4; + mWidth = outMetrics.widthPixels / 3; mLayoutParams = new LinearLayout.LayoutParams(mWidth / 2, DisplayUtils.dip2px(getActivity(), 2)); } @Override public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); + setNavigationTitle(getString(R.string.info_center_title)); mLayoutParams.leftMargin = RandomUtils.getInt(mWidth * (mCheckedIndex + 0.25)); mNewsSlidebarLine.setLayoutParams(mLayoutParams); diff --git a/app/src/main/java/com/gh/gamecenter/login/UserRepository.java b/app/src/main/java/com/gh/gamecenter/login/UserRepository.java index d1f0c245c9..5a548b0a44 100644 --- a/app/src/main/java/com/gh/gamecenter/login/UserRepository.java +++ b/app/src/main/java/com/gh/gamecenter/login/UserRepository.java @@ -277,11 +277,11 @@ class UserRepository { JSONObject content = new JSONObject(string); int code = content.getInt("code"); // Utils.toast(mContext, mContext.getString(R.string.login_refresh_error)); - if (code == 40802) { // 其他设备登录了该账号 + if (code == 400802) { // 其他设备登录了该账号 EventBus.getDefault().post(new EBShowDialog("loginException", string)); // 打开提示框 } - if (code == 40802 || code == 40401) { // 自动注销 + if (code == 400802 || code == 400401) { // 自动注销 logout(); } else { ApiResponse value = new ApiResponse<>(); diff --git a/app/src/main/java/com/gh/gamecenter/manager/RefreshTokenManager.java b/app/src/main/java/com/gh/gamecenter/manager/RefreshTokenManager.java index 269328026a..803a7f3088 100644 --- a/app/src/main/java/com/gh/gamecenter/manager/RefreshTokenManager.java +++ b/app/src/main/java/com/gh/gamecenter/manager/RefreshTokenManager.java @@ -111,11 +111,11 @@ public class RefreshTokenManager { JSONObject content = new JSONObject(string); int code = content.getInt("code"); // Utils.toast(mContext, mContext.getString(R.string.login_refresh_error)); - if (code == 40802) { // 其他设备登录了该账号 + if (code == 400802) { // 其他设备登录了该账号 EventBus.getDefault().post(new EBShowDialog("loginException", string)); // 打开提示框 } - if (code == 40802 || code == 40401) { // 自动注销 + if (code == 400802 || code == 400401) { // 自动注销 EventBus.getDefault().post(new EBReuse(PersonalFragment.LOGOUT_TAG)); } } catch (Exception e1) { diff --git a/app/src/main/java/com/gh/gamecenter/message/MessageItemVieHolder.java b/app/src/main/java/com/gh/gamecenter/message/MessageItemVieHolder.java index 2fe5c277b5..7bd9a2bca7 100644 --- a/app/src/main/java/com/gh/gamecenter/message/MessageItemVieHolder.java +++ b/app/src/main/java/com/gh/gamecenter/message/MessageItemVieHolder.java @@ -83,6 +83,7 @@ public class MessageItemVieHolder extends BaseRecyclerViewHolder { entity.getUserEntity().getName(), entity.getAnswer().getContent()); mContent.setMaxLines(2); + mUserStatus.setText(R.string.answer_myconcern_questions); break; default: diff --git a/app/src/main/java/com/gh/gamecenter/personal/PersonalFragment.java b/app/src/main/java/com/gh/gamecenter/personal/PersonalFragment.java index 3b25fb7e37..e962c29048 100644 --- a/app/src/main/java/com/gh/gamecenter/personal/PersonalFragment.java +++ b/app/src/main/java/com/gh/gamecenter/personal/PersonalFragment.java @@ -194,13 +194,13 @@ public class PersonalFragment extends BaseFragment implements Observer getQuestionsById(@Path("questions_id") String questionsId); /** - * 社区问题的答案列表 + * 社区问题的回答列表 */ @GET("questions/{questions_id}/answers?view=digest") Observable> getQuestionsAnswer(@Path("questions_id") String questionsId, @Query("fold") boolean isFold); @@ -780,7 +780,7 @@ public interface ApiService { Observable patchQuestionAnswer(@Body RequestBody body, @Path("answer_id") String answerId); /** - * 答案详情 + * 回答详情 */ @GET("answers/{answer_id}?view=detail") Observable getAnswerDetail(@Path("answer_id") String answerId); @@ -798,7 +798,7 @@ public interface ApiService { Observable postQuestions(@Body RequestBody body, @Path("community_id") String communityId); /** - * 对社区答案点赞 + * 对社区回答点赞 */ @POST("answers/{answer_id}:vote") Observable postAnswerVote(@Path("answer_id") String answerId); @@ -810,7 +810,7 @@ public interface ApiService { Observable> getMyQuestions(@Path("user_id") String userId, @Query("offset") int offset); /** - * 获取用户的答案列表 + * 获取用户的回答列表 */ @GET("users/{user_id}/answers") Observable> getMyAnswers(@Path("user_id") String userId, @Query("offset") int offset); @@ -828,13 +828,13 @@ public interface ApiService { Observable> getConcernQuestions(@Query("offset") int offset); /** - * 收藏答案 + * 收藏回答 */ @POST("favorite/answers/{answer_id}") Observable postCollectionAnswer(@Path("answer_id") String answerId); /** - * 取消收藏答案 + * 取消收藏回答 */ @DELETE("favorite/answers/{answer_id}") Observable deleteCollectionAnswer(@Path("answer_id") String answerId); @@ -853,19 +853,19 @@ public interface ApiService { /** - * 保存单个用户答案的草稿 + * 保存单个用户回答的草稿 */ @GET("questions/{question_id}/answer_drafts") Observable getUserAnswerDrafts(@Path("question_id") String questionsId); /** - * 保存用户答案的草稿 + * 保存用户回答的草稿 */ @POST("questions/{question_id}/answer_drafts") Observable postAnswerDrafts(@Body RequestBody body, @Path("question_id") String questionsId); /** - * 获取用户收藏的答案列表 + * 获取用户收藏的回答列表 */ @GET("favorite/answers") Observable> getCollestionAnswer(@Query("offset") int offset); diff --git a/app/src/main/java/com/halo/assistant/fragment/user/UserInfoEditFragment.java b/app/src/main/java/com/halo/assistant/fragment/user/UserInfoEditFragment.java index f9acf59b6a..4336de5a20 100644 --- a/app/src/main/java/com/halo/assistant/fragment/user/UserInfoEditFragment.java +++ b/app/src/main/java/com/halo/assistant/fragment/user/UserInfoEditFragment.java @@ -4,12 +4,11 @@ import android.app.Dialog; import android.arch.lifecycle.Observer; import android.arch.lifecycle.ViewModelProviders; import android.os.Bundle; +import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.text.Editable; import android.text.TextUtils; import android.text.TextWatcher; -import android.view.Menu; -import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.widget.EditText; @@ -29,9 +28,8 @@ import butterknife.OnClick; /** * Created by CsHeng on 19/12/2017. - * + *

* 修改用户信息总页面 - * */ public class UserInfoEditFragment extends NormalFragment { @@ -69,33 +67,6 @@ public class UserInfoEditFragment extends NormalFragment { return R.layout.fragment_userinfo_edit; } - @Override - public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { - super.onCreateOptionsMenu(menu, inflater); - inflater.inflate(R.menu.menu_button, menu); - mSaveMenuItem = menu.findItem(R.id.menu_button); - mSaveMenuItem.setTitle(R.string.menu_text_save); - mSaveMenuItem.setVisible(false); - final TextView textView = mSaveMenuItem.getActionView().findViewById(R.id.tv_menu_button); - textView.setText(R.string.menu_text_save); - textView.setOnClickListener(this); - - if (mUserInfoEntity != null) { - initView(); - } - } - - @Override - protected boolean handleOnClick(View view) { - switch (view.getId()) { - case R.id.tv_menu_button: - saveData(); - return true; - - } - return super.handleOnClick(view); - } - @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -120,6 +91,28 @@ public class UserInfoEditFragment extends NormalFragment { } + @Override + public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + initMenu(R.menu.menu_button); + mSaveMenuItem = getItemMenu(R.id.menu_button); + TextView menuView = mSaveMenuItem.getActionView().findViewById(R.id.tv_menu_button); + menuView.setText(R.string.menu_text_save); + if (mUserInfoEntity != null) { + initView(); + } + } + + @Override + public void onMenuItemClick(MenuItem menuItem) { + super.onMenuItemClick(menuItem); + switch (menuItem.getItemId()) { + case R.id.menu_button: + saveData(); + break; + } + } + private void initView() { String title; switch (mEditType) { @@ -127,6 +120,7 @@ public class UserInfoEditFragment extends NormalFragment { mUserinfoEditSex.setVisibility(View.VISIBLE); title = getString(R.string.title_gender_select); String gender = mUserInfoEntity.getGender(); + mSaveMenuItem.setVisible(false); if (!TextUtils.isEmpty(gender)) { if (getString(R.string.gender_male).equals(gender)) { mUserinfoSexmanSelect.setVisibility(View.VISIBLE); diff --git a/app/src/main/res/drawable-xxhdpi/discover_apk_cleaner_icon.png b/app/src/main/res/drawable-xxhdpi/discover_apk_cleaner_icon.png new file mode 100644 index 0000000000..2365bb7efa Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/discover_apk_cleaner_icon.png differ diff --git a/app/src/main/res/drawable-xxhdpi/discover_game_trends_icon.png b/app/src/main/res/drawable-xxhdpi/discover_game_trends_icon.png new file mode 100644 index 0000000000..980cceb800 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/discover_game_trends_icon.png differ diff --git a/app/src/main/res/drawable-xxhdpi/discover_info_icon.png b/app/src/main/res/drawable-xxhdpi/discover_info_icon.png new file mode 100644 index 0000000000..787147a2e0 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/discover_info_icon.png differ diff --git a/app/src/main/res/drawable-xxhdpi/discover_kuaichuan_icon.png b/app/src/main/res/drawable-xxhdpi/discover_kuaichuan_icon.png new file mode 100644 index 0000000000..b7a5968914 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/discover_kuaichuan_icon.png differ diff --git a/app/src/main/res/layout/fragment_discover.xml b/app/src/main/res/layout/fragment_discover.xml new file mode 100644 index 0000000000..d9db0cc661 --- /dev/null +++ b/app/src/main/res/layout/fragment_discover.xml @@ -0,0 +1,212 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_info_wrapper.xml b/app/src/main/res/layout/fragment_info_wrapper.xml index dc5e674fb7..d67c321e3c 100644 --- a/app/src/main/res/layout/fragment_info_wrapper.xml +++ b/app/src/main/res/layout/fragment_info_wrapper.xml @@ -27,14 +27,14 @@ android:textAlignment = "center" android:textColor = "@color/text_tabbar_style" /> - + + + + + + + + diff --git a/app/src/main/res/layout/fragment_wrapper_myask.xml b/app/src/main/res/layout/fragment_wrapper_myask.xml index 2900eeacef..2205d2b396 100644 --- a/app/src/main/res/layout/fragment_wrapper_myask.xml +++ b/app/src/main/res/layout/fragment_wrapper_myask.xml @@ -39,7 +39,7 @@ android:layout_height = "match_parent" android:layout_weight = "1" android:gravity = "center" - android:text = "我的答案" + android:text = "我的回答" android:textAlignment = "center" android:textColor = "@color/text_tabbar_style" /> diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index e68508f09e..561fb68cd9 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -482,14 +482,14 @@ 我的问答 我的问答 已关注 - 答案为什么折叠? + 回答为什么折叠? 继续撰写 回答 发布 请撰写回答... %1$s:%2$s]]> - 我的答案:%1$s + 我的回答:%1$s 问题:%1$s 文章:%1$s 我的评论:%1$s @@ -497,13 +497,13 @@ 回答了我的问题 邀请我回答 回复评论 - 查看答案 + 查看回答 修改回答 我来回答 继续回答 邀请回答 撰写回答 - 修改答案 + 修改回答 网络错误 已经点赞了哟~ @@ -514,5 +514,10 @@ http://www.ghzs.com/article/5a4e14a1d53f8b26008b45d0.html http://www.ghzs.com/article/5a50a008d53f8b23008b465a.html 光环助手,快乐前行的游戏问答社区 + 资讯中心 + 游戏动态 + 发现 + 资讯中心 + 回答了我关注的问题