From fc2179928853de1f090d64483eb06cd4dcf29b42 Mon Sep 17 00:00:00 2001 From: juntao Date: Tue, 27 Apr 2021 16:17:25 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E9=A6=96=E9=A1=B5=E9=A1=B6?= =?UTF-8?q?=E9=83=A8Tab=E6=A0=8F=E5=8A=9F=E8=83=BD(20210426=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E9=97=AE=E9=A2=98)=20https://git.ghzs.com/pm/halo-app?= =?UTF-8?q?-issues/-/issues/1215?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/gh/common/util/EntranceUtils.java | 1 + .../com/gh/gamecenter/catalog/CatalogFragment.kt | 8 ++++++++ .../gh/gamecenter/category2/CategoryV2Fragment.kt | 5 ++++- .../fragment/HomeSearchToolWrapperFragment.kt | 14 +++++++++++++- .../detail/ColumnCollectionDetailFragment.kt | 1 + .../gh/gamecenter/subject/SubjectListFragment.kt | 3 +-- .../com/gh/gamecenter/subject/SubjectViewModel.kt | 1 + app/src/main/res/layout/fragment_catalog.xml | 1 + app/src/main/res/layout/fragment_kaifu_content.xml | 3 ++- .../main/res/layout/fragment_main_home_wrapper.xml | 5 +++-- 10 files changed, 35 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/com/gh/common/util/EntranceUtils.java b/app/src/main/java/com/gh/common/util/EntranceUtils.java index 6f8a6c7f73..095ade8041 100644 --- a/app/src/main/java/com/gh/common/util/EntranceUtils.java +++ b/app/src/main/java/com/gh/common/util/EntranceUtils.java @@ -148,6 +148,7 @@ public class EntranceUtils { public static final String KEY_RECOMMENDS_CONTENTS = "isRecommendsContents"; public static final String KEY_VERSION_UPDATE = "versionUpdate"; public static final String KEY_CHECK_QUESTION_CONCERN = "check_question_concern"; + public static final String KEY_IS_COLUMN_COLLECTION = "is_column_collection";//是专题合集 public static final String KEY_DRAFT_ID = "draft_id"; public static final String KEY_KAIFU_LIST = "kaifuList"; public static final String KEY_CATEGORY = "category"; diff --git a/app/src/main/java/com/gh/gamecenter/catalog/CatalogFragment.kt b/app/src/main/java/com/gh/gamecenter/catalog/CatalogFragment.kt index c58671e868..be0e5df916 100644 --- a/app/src/main/java/com/gh/gamecenter/catalog/CatalogFragment.kt +++ b/app/src/main/java/com/gh/gamecenter/catalog/CatalogFragment.kt @@ -1,10 +1,12 @@ package com.gh.gamecenter.catalog +import android.graphics.Color import android.view.View import androidx.core.os.bundleOf import androidx.lifecycle.Observer import com.gh.base.fragment.LazyFragment import com.gh.common.util.EntranceUtils +import com.gh.common.util.dip2px import com.gh.common.util.viewModelProviderFromParent import com.gh.common.view.FixLinearLayoutManager import com.gh.gamecenter.R @@ -68,6 +70,12 @@ class CatalogFragment : LazyFragment() { } } }) + + if (arguments?.getBoolean(EntranceUtils.KEY_IS_HOME) == true) { + mBinding?.divider?.visibility = View.GONE + mBinding?.root?.setBackgroundColor(Color.WHITE) + mBinding?.root?.setPadding(0, 8F.dip2px(), 0, 0) + } } override fun onRealLayoutInflated(inflatedView: View) { diff --git a/app/src/main/java/com/gh/gamecenter/category2/CategoryV2Fragment.kt b/app/src/main/java/com/gh/gamecenter/category2/CategoryV2Fragment.kt index d1541f89a5..e2af620499 100644 --- a/app/src/main/java/com/gh/gamecenter/category2/CategoryV2Fragment.kt +++ b/app/src/main/java/com/gh/gamecenter/category2/CategoryV2Fragment.kt @@ -1,5 +1,6 @@ package com.gh.gamecenter.category2 +import android.graphics.Color import android.view.MenuItem import android.view.View import androidx.core.os.bundleOf @@ -57,8 +58,10 @@ class CategoryV2Fragment : LazyFragment() { directoryRv.layoutParams.width = width if (arguments?.getBoolean(EntranceUtils.KEY_IS_HOME) == true) { + root.setBackgroundColor(Color.WHITE) + root.setPadding(0, 8F.dip2px(), 0, 0) directoryRv.isNestedScrollingEnabled = false - directoryContainer.setPadding(0, 0, 0, requireContext().resources.getDimension(R.dimen.main_bottom_tab_height).toInt()) +// directoryContainer.setPadding(0, 0, 0, requireContext().resources.getDimension(R.dimen.main_bottom_tab_height).toInt()) } } diff --git a/app/src/main/java/com/gh/gamecenter/fragment/HomeSearchToolWrapperFragment.kt b/app/src/main/java/com/gh/gamecenter/fragment/HomeSearchToolWrapperFragment.kt index 025cbf5d9f..396b359930 100644 --- a/app/src/main/java/com/gh/gamecenter/fragment/HomeSearchToolWrapperFragment.kt +++ b/app/src/main/java/com/gh/gamecenter/fragment/HomeSearchToolWrapperFragment.kt @@ -30,10 +30,12 @@ import com.gh.gamecenter.home.HomeFragment import com.gh.gamecenter.servers.GameServersPublishFragment import com.gh.gamecenter.servers.GameServersTestFragment import com.gh.gamecenter.subject.SubjectFragment +import com.google.android.material.appbar.AppBarLayout import com.halo.assistant.fragment.WebFragment import com.lightgame.utils.Utils import kotlin.math.abs + /** * 主页以 ViewPager 的形式实现,不需要替换主 Fragment */ @@ -82,6 +84,15 @@ class HomeSearchToolWrapperFragment : SearchToolWrapperFragment() { mDefaultSelectedTab = mViewModel?.defaultTabPosition ?: 0 } initViewPager(it) + + // 当 tab 为一个的时候隐藏顶部 tab 栏,停用 nestedScroll + if (it.size == 1) { + mBinding?.tabContainer?.visibility = View.GONE + (mBinding?.collapsingToolbar?.layoutParams as? AppBarLayout.LayoutParams)?.let { lp -> + lp.scrollFlags = AppBarLayout.LayoutParams.SCROLL_FLAG_NO_SCROLL + } + } + mBinding?.noConnectionContainer?.reuseNoConnection?.visibility = View.GONE mBinding?.loadingContainer?.reuseLlLoading?.visibility = View.GONE }) @@ -222,7 +233,7 @@ class HomeSearchToolWrapperFragment : SearchToolWrapperFragment() { tabLayout.setupWithViewPager(mBinding?.viewPager) indicatorView.setupWithTabLayout(mBinding?.tabLayout) indicatorView.setupWithViewPager(mBinding?.viewPager) - indicatorView.setIndicatorWidth(20) + indicatorView.setIndicatorWidth(18) for (i in 0 until mBinding?.tabLayout?.tabCount!!) { val tab = mBinding?.tabLayout?.getTabAt(i) ?: continue val tabTitle = if (tab.text != null) tab.text.toString() else "" @@ -264,6 +275,7 @@ class HomeSearchToolWrapperFragment : SearchToolWrapperFragment() { putString(EntranceUtils.KEY_COLLECTION_ID, tab.link) putInt(EntranceUtils.KEY_POSITION, 0) putString(EntranceUtils.KEY_COLUMNNAME, tab.text) + putBoolean(EntranceUtils.KEY_IS_COLUMN_COLLECTION, true) }) "column" -> SubjectFragment().with(Bundle().apply { putString(EntranceUtils.KEY_ENTRANCE, "首页") diff --git a/app/src/main/java/com/gh/gamecenter/game/columncollection/detail/ColumnCollectionDetailFragment.kt b/app/src/main/java/com/gh/gamecenter/game/columncollection/detail/ColumnCollectionDetailFragment.kt index bb305d4b9c..459a3deafe 100644 --- a/app/src/main/java/com/gh/gamecenter/game/columncollection/detail/ColumnCollectionDetailFragment.kt +++ b/app/src/main/java/com/gh/gamecenter/game/columncollection/detail/ColumnCollectionDetailFragment.kt @@ -79,6 +79,7 @@ class ColumnCollectionDetailFragment : LazyListFragment() } override fun onFragmentFirstVisible() { - mIsColumnCollection = activity is ColumnCollectionDetailActivity + mIsColumnCollection = arguments?.getBoolean(EntranceUtils.KEY_IS_COLUMN_COLLECTION, false) ?: false super.onFragmentFirstVisible() mSkeletonScreen = Skeleton .bind(mCachedView.findViewById(R.id.list_skeleton)) diff --git a/app/src/main/java/com/gh/gamecenter/subject/SubjectViewModel.kt b/app/src/main/java/com/gh/gamecenter/subject/SubjectViewModel.kt index f5df11a52a..01cf91bb45 100644 --- a/app/src/main/java/com/gh/gamecenter/subject/SubjectViewModel.kt +++ b/app/src/main/java/com/gh/gamecenter/subject/SubjectViewModel.kt @@ -77,6 +77,7 @@ class SubjectViewModel(application: Application, var subjectData: SubjectData?) subjectData?.tagType = response.tag subjectData?.briefStyle = response.briefStyle subjectData?.showSuffix = response.showSuffix + subjectData?.isOrder = response.order subjectSettingLD.postValue(response) } diff --git a/app/src/main/res/layout/fragment_catalog.xml b/app/src/main/res/layout/fragment_catalog.xml index ff3db77722..624c8b87b8 100644 --- a/app/src/main/res/layout/fragment_catalog.xml +++ b/app/src/main/res/layout/fragment_catalog.xml @@ -5,6 +5,7 @@ android:layout_height="match_parent"> diff --git a/app/src/main/res/layout/fragment_kaifu_content.xml b/app/src/main/res/layout/fragment_kaifu_content.xml index 4ab36333fd..3c0a7a661a 100644 --- a/app/src/main/res/layout/fragment_kaifu_content.xml +++ b/app/src/main/res/layout/fragment_kaifu_content.xml @@ -18,7 +18,8 @@ layout="@layout/reuse_loading" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_centerInParent="true" /> + android:layout_centerInParent="true" + android:visibility="gone" /> @@ -49,8 +50,8 @@ + android:layout_height="52dp" + android:paddingBottom="8dp">