From 73bc256ce69a374fb41f86acb8da8c8b8a9eb758 Mon Sep 17 00:00:00 2001 From: kehaoyuan Date: Thu, 19 Apr 2018 16:49:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=89=E7=8E=AF=E5=8A=A9=E6=89=8BV3.2=20RELE?= =?UTF-8?q?ASE=EF=BC=8820180418-1420=EF=BC=89=E6=B5=8B=E8=AF=95=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E6=B1=87=E6=80=BB(=E9=83=A8=E5=88=86=E5=AE=8C?= =?UTF-8?q?=E6=88=90)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gh/gamecenter/SplashScreenActivity.java | 8 +++++ .../ask/AskQuestionsRecommendsFragment.java | 32 ++++++++++++++++--- .../ask/AskQuestionsRecommendsViewHolder.java | 3 ++ .../ask/AskQuestionsRecommendsViewModel.java | 4 ++- .../gh/gamecenter/ask/SelectGameFragment.java | 18 +++++++++++ .../gh/gamecenter/ask/entity/AnswerEntity.kt | 6 ++-- .../ask/questionsdetail/AnswerViewHolder.java | 4 +-- .../ask/subject/AskSubjectFragment.java | 29 ++++++++++++++++- .../ask/subject/AskSubjectViewModel.java | 2 +- .../gh/gamecenter/message/MessageAdapter.java | 11 +++++-- .../gamecenter/message/MessageFragment.java | 1 + .../message/MessageItemViewHolder.java | 5 +++ .../message/MessageNormalFragment.java | 6 ---- .../gamecenter/personal/PersonalFragment.java | 4 +-- .../retrofit/service/ApiService.java | 8 +++-- .../fragment/user/UserInfoEditFragment.java | 15 +++------ .../res/layout/ask_questions_hot_item.xml | 18 ++++++++--- .../layout/ask_recommends_refresh_item.xml | 10 ++++++ .../res/layout/fragment_list_nodate_skip.xml | 6 ++-- app/src/main/res/layout/message_item.xml | 1 - app/src/main/res/layout/reuse_toolbar.xml | 2 ++ 21 files changed, 149 insertions(+), 44 deletions(-) create mode 100644 app/src/main/res/layout/ask_recommends_refresh_item.xml diff --git a/app/src/main/java/com/gh/gamecenter/SplashScreenActivity.java b/app/src/main/java/com/gh/gamecenter/SplashScreenActivity.java index 5d10c4d1ff..2d37fa5d64 100644 --- a/app/src/main/java/com/gh/gamecenter/SplashScreenActivity.java +++ b/app/src/main/java/com/gh/gamecenter/SplashScreenActivity.java @@ -19,6 +19,7 @@ import android.widget.ImageView; import android.widget.TextView; import com.gh.base.BaseActivity; +import com.gh.base.fragment.BaseFragment_ViewPager; import com.gh.common.util.DialogUtils; import com.gh.common.util.PackageUtils; import com.gh.common.util.PlatformUtils; @@ -26,6 +27,7 @@ import com.gh.common.util.TagUtils; import com.gh.common.util.TimestampUtils; import com.gh.common.util.TokenUtils; import com.gh.download.DownloadManager; +import com.gh.gamecenter.fragment.MainWrapperFragment; import com.gh.gamecenter.manager.FilterManager; import com.lightgame.download.FileUtils; import com.lightgame.utils.AppManager; @@ -155,6 +157,12 @@ public class SplashScreenActivity extends BaseActivity { private void launch() { Bundle bundle = getIntent().getExtras(); Intent intent = new Intent(SplashScreenActivity.this, MainActivity.class); + if (isNewFirstLaunch) { + intent.putExtra(BaseFragment_ViewPager.ARGS_INDEX, MainWrapperFragment.INDEX_ASK); + Intent[] intents = new Intent[]{intent,CommunitiesSelectActivity.getIntent(this)}; + startActivities(intents); + return; + } if (bundle != null) intent.putExtras(bundle); startActivity(intent); finish(); diff --git a/app/src/main/java/com/gh/gamecenter/ask/AskQuestionsRecommendsFragment.java b/app/src/main/java/com/gh/gamecenter/ask/AskQuestionsRecommendsFragment.java index 9be99e56ff..c449d37d11 100644 --- a/app/src/main/java/com/gh/gamecenter/ask/AskQuestionsRecommendsFragment.java +++ b/app/src/main/java/com/gh/gamecenter/ask/AskQuestionsRecommendsFragment.java @@ -6,10 +6,12 @@ import android.os.Bundle; import android.os.Message; import android.support.annotation.Nullable; import android.view.View; +import android.view.ViewGroup; import android.widget.TextView; import com.gh.common.util.AskLogUtils; import com.gh.common.util.CheckLoginUtils; +import com.gh.common.util.DisplayUtils; import com.gh.gamecenter.AnswerDetailActivity; import com.gh.gamecenter.QuestionEditActivity; import com.gh.gamecenter.QuestionsDetailActivity; @@ -46,10 +48,31 @@ public class AskQuestionsRecommendsFragment extends ListFragment= 35) { + mBaseHandler.sendEmptyMessageDelayed(1, 1000); + return; + } + ViewGroup.LayoutParams layoutParams = mRefreshHint.getLayoutParams(); + layoutParams.height = DisplayUtils.dip2px(getContext(), mRefreshHeight); + mRefreshHint.setLayoutParams(layoutParams); + mBaseHandler.sendEmptyMessage(0); } } @@ -62,11 +85,11 @@ public class AskQuestionsRecommendsFragment extends ListFragment { if (integer != null) { + mRefreshHeight = 8; switch (integer) { case 0: mRefreshHint.setText("已经没有新内容咯,请稍后再试"); - mRefreshHint.setVisibility(View.VISIBLE); - mBaseHandler.sendEmptyMessageDelayed(1, 2000); + mBaseHandler.sendEmptyMessage(0); AskLogUtils.communityRefresh(getContext(), integer); break; case -1: @@ -74,8 +97,7 @@ public class AskQuestionsRecommendsFragment extends ListFragment { public void initAnswerViewHolder(Context context, AnswerEntity entity) { setClickData(entity); mContent.setText(entity.getBrief()); - mCommentCount.setText(String.format("%d 评论", entity.getAnswerCount())); + mCommentCount.setText(String.format("%d 评论", entity.getCommentCount())); mVotecount.setText(context.getString(R.string.ask_vote_count, AskUtils.voteCountFormat(entity.getVote()))); UserEntity user = entity.getUser(); mUsername.setText(user.getName()); @@ -93,7 +93,7 @@ public class AnswerViewHolder extends BaseRecyclerViewHolder { mContent.setText(entity.getBrief()); mCommunityName.setVisibility(View.VISIBLE); mCommunityName.setText(entity.getCommunityName()); - mCommentCount.setText(String.format("%d 评论", entity.getAnswerCount())); + mCommentCount.setText(String.format("%d 评论", entity.getCommentCount())); mVotecount.setText(itemView.getContext().getString(R.string.ask_vote_count, AskUtils.voteCountFormat(entity.getVote()))); List images = entity.getImages(); if (images.size() > 0) { diff --git a/app/src/main/java/com/gh/gamecenter/ask/subject/AskSubjectFragment.java b/app/src/main/java/com/gh/gamecenter/ask/subject/AskSubjectFragment.java index 894c17a545..0612fae3eb 100644 --- a/app/src/main/java/com/gh/gamecenter/ask/subject/AskSubjectFragment.java +++ b/app/src/main/java/com/gh/gamecenter/ask/subject/AskSubjectFragment.java @@ -7,6 +7,7 @@ import android.support.v7.widget.RecyclerView; import android.view.View; import com.gh.common.util.AskLogUtils; +import com.gh.common.util.DisplayUtils; import com.gh.common.view.VerticalItemDecoration; import com.gh.gamecenter.AnswerDetailActivity; import com.gh.gamecenter.QuestionsDetailActivity; @@ -27,6 +28,10 @@ public class AskSubjectFragment extends ListFragment height && entity != null) { + setNavigationTitle(entity.getTitle()); + } else { + setNavigationTitle("问答专题"); + } + } + }); } @Override diff --git a/app/src/main/java/com/gh/gamecenter/ask/subject/AskSubjectViewModel.java b/app/src/main/java/com/gh/gamecenter/ask/subject/AskSubjectViewModel.java index 7d54a66a6b..65147b69a7 100644 --- a/app/src/main/java/com/gh/gamecenter/ask/subject/AskSubjectViewModel.java +++ b/app/src/main/java/com/gh/gamecenter/ask/subject/AskSubjectViewModel.java @@ -44,6 +44,6 @@ public class AskSubjectViewModel extends ListViewModel> provideDataObservable(int page) { if (mSubjectLiveData.getValue() == null) return null; return RetrofitManager.getInstance(getApplication()).getApi() - .getAskSubjectColumnAnswers(UserManager.getInstance().getCommunityId(getApplication()), mSubjectLiveData.getValue().getId()); + .getAskSubjectColumnAnswers(UserManager.getInstance().getCommunityId(getApplication()), mSubjectLiveData.getValue().getId(), page); } } diff --git a/app/src/main/java/com/gh/gamecenter/message/MessageAdapter.java b/app/src/main/java/com/gh/gamecenter/message/MessageAdapter.java index bd56852e7f..a981609903 100644 --- a/app/src/main/java/com/gh/gamecenter/message/MessageAdapter.java +++ b/app/src/main/java/com/gh/gamecenter/message/MessageAdapter.java @@ -83,8 +83,15 @@ public class MessageAdapter extends ListAdapter { viewHolder.setMessageItem(mEntityList.get(position - TOP_ITEM_COUNT)); break; case ItemViewType.ITEM_FOOTER: - ((FooterViewHolder) holder).initFooterViewHolder(mIsNetworkError, mIsOver, R.string.ask_loadover_hint); - ((FooterViewHolder) holder).initItemPadding(); + FooterViewHolder footerViewHolder = (FooterViewHolder) holder; + footerViewHolder.initFooterViewHolder(mIsNetworkError, mIsOver, R.string.ask_loadover_hint); + footerViewHolder.initItemPadding(); + + if (mIsOver && (mEntityList == null || mEntityList.isEmpty())) { + footerViewHolder.itemView.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, 0)); + } else { + footerViewHolder.itemView.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT)); + } break; } } diff --git a/app/src/main/java/com/gh/gamecenter/message/MessageFragment.java b/app/src/main/java/com/gh/gamecenter/message/MessageFragment.java index 04184309ec..b79d164327 100644 --- a/app/src/main/java/com/gh/gamecenter/message/MessageFragment.java +++ b/app/src/main/java/com/gh/gamecenter/message/MessageFragment.java @@ -61,6 +61,7 @@ public class MessageFragment extends ListFragment case "answer": mBinding.messageCommand.setText("回答了你的问题"); mBinding.messageContent.setVisibility(View.VISIBLE); + mBinding.messageContent.setMaxLines(3); mBinding.messageContent.setText(messageEntity.getAnswer().getContent()); mBinding.messageOriginalTitle.setText(messageEntity.getQuestion().getTitle()); images = messageEntity.getAnswer().getImages(); @@ -52,6 +53,7 @@ public class MessageItemViewHolder extends BaseRecyclerViewHolder case "reply": mBinding.messageCommand.setText("回复了你"); mBinding.messageContent.setVisibility(View.VISIBLE); + mBinding.messageContent.setMaxLines(Integer.MAX_VALUE); mBinding.messageContent.setText(messageEntity.getDialogue().getFrom().getContent()); mBinding.messageOriginalTitle.setText(messageEntity.getArticle().getTitle()); mBinding.messageOriginalIcon.setImageURI(messageEntity.getArticle().getThumb()); @@ -59,6 +61,7 @@ public class MessageItemViewHolder extends BaseRecyclerViewHolder case "follow_question": mBinding.messageCommand.setText("回答了你关注的问题"); mBinding.messageContent.setVisibility(View.VISIBLE); + mBinding.messageContent.setMaxLines(3); mBinding.messageContent.setText(messageEntity.getAnswer().getContent()); mBinding.messageOriginalTitle.setText(messageEntity.getQuestion().getTitle()); images = messageEntity.getAnswer().getImages(); @@ -68,6 +71,7 @@ public class MessageItemViewHolder extends BaseRecyclerViewHolder case "reply_answer_comment": mBinding.messageCommand.setText("回复了你"); mBinding.messageContent.setVisibility(View.VISIBLE); + mBinding.messageContent.setMaxLines(Integer.MAX_VALUE); mBinding.messageContent.setText(messageEntity.getDialogue().getFrom().getContent()); mBinding.messageOriginalTitle.setText(messageEntity.getQuestion().getTitle()); images = messageEntity.getAnswer().getImages(); @@ -77,6 +81,7 @@ public class MessageItemViewHolder extends BaseRecyclerViewHolder case "answer_comment": mBinding.messageCommand.setText("评论了你"); mBinding.messageContent.setVisibility(View.VISIBLE); + mBinding.messageContent.setMaxLines(Integer.MAX_VALUE); mBinding.messageContent.setText(messageEntity.getComment().getContent()); mBinding.messageOriginalTitle.setText(messageEntity.getQuestion().getTitle()); images = messageEntity.getAnswer().getImages(); diff --git a/app/src/main/java/com/gh/gamecenter/message/MessageNormalFragment.java b/app/src/main/java/com/gh/gamecenter/message/MessageNormalFragment.java index aa5b7ce920..e547ee98c1 100644 --- a/app/src/main/java/com/gh/gamecenter/message/MessageNormalFragment.java +++ b/app/src/main/java/com/gh/gamecenter/message/MessageNormalFragment.java @@ -34,12 +34,6 @@ public class MessageNormalFragment extends ListFragment() { @@ -326,7 +326,7 @@ public class PersonalFragment extends BaseFragment implements Observer> getAskSubjectColumnAnswers(@Path("community_id") String communityId, @Path("column_id") String columnId); + Observable> getAskSubjectColumnAnswers(@Path("community_id") String communityId + , @Path("column_id") String columnId + , @Query("page") int page); // /** // * 获取默认社区 @@ -933,7 +935,7 @@ public interface ApiService { /** * 签到 */ - @POST("sign-in") - Observable postSign(); + @GET("users/{user_id}:sign-in") + Observable postSign(@Path("user_id") String userId); } \ No newline at end of file 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 f79351f499..1db5a4660c 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 @@ -67,22 +67,17 @@ public class UserInfoEditFragment extends NormalFragment { return R.layout.fragment_userinfo_edit; } - @Override - public void onActivityCreated(@Nullable Bundle savedInstanceState) { - super.onActivityCreated(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); - - } - @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setHasOptionsMenu(true); mEditType = getArguments().getString(UserViewModel.KEY_EDITTYPE); + 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); + mUserInfoEntity = UserManager.getInstance().getUserInfoEntity(); UserViewModel.Factory factory = new UserViewModel.Factory(getActivity().getApplication()); diff --git a/app/src/main/res/layout/ask_questions_hot_item.xml b/app/src/main/res/layout/ask_questions_hot_item.xml index 67ae9edeb0..4f400767ca 100644 --- a/app/src/main/res/layout/ask_questions_hot_item.xml +++ b/app/src/main/res/layout/ask_questions_hot_item.xml @@ -16,18 +16,18 @@ style = "@style/frescoCircleStyle" android:layout_width = "20dp" android:layout_height = "20dp" - fresco:roundAsCircle = "true" app:layout_constraintLeft_toLeftOf = "@id/ask_item_constraintlayout" - app:layout_constraintTop_toTopOf = "@id/ask_item_constraintlayout" /> + app:layout_constraintTop_toTopOf = "@id/ask_item_constraintlayout" + fresco:roundAsCircle = "true" /> @@ -37,8 +37,8 @@ android:layout_width = "match_parent" android:layout_height = "wrap_content" android:layout_marginTop = "7dp" + android:ellipsize = "end" android:maxLines = "2" - android:ellipsize="end" android:textColor = "@color/black" android:textSize = "16sp" android:textStyle = "bold" @@ -73,5 +73,15 @@ android:textSize = "11sp" app:layout_constraintTop_toBottomOf = "@id/ask_item_img" /> + \ No newline at end of file diff --git a/app/src/main/res/layout/ask_recommends_refresh_item.xml b/app/src/main/res/layout/ask_recommends_refresh_item.xml new file mode 100644 index 0000000000..1632840211 --- /dev/null +++ b/app/src/main/res/layout/ask_recommends_refresh_item.xml @@ -0,0 +1,10 @@ + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_list_nodate_skip.xml b/app/src/main/res/layout/fragment_list_nodate_skip.xml index a00f5c9e28..8677af24e2 100644 --- a/app/src/main/res/layout/fragment_list_nodate_skip.xml +++ b/app/src/main/res/layout/fragment_list_nodate_skip.xml @@ -15,14 +15,14 @@ + android:layout_height = "wrap_content" + android:layout_below = "@+id/refresh_hint" /> \ No newline at end of file