From a58165213d076159ce8ccc67b261fd57f12af1bd Mon Sep 17 00:00:00 2001 From: Max Date: Fri, 22 Dec 2023 09:50:24 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E5=A2=9E=E5=8A=A0=E9=A6=96=E9=A1=B5?= =?UTF-8?q?=E5=8A=A8=E6=80=81=E5=88=87=E6=8D=A2Tab?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/nnbc123/app/home/fragment/HomeFragment2.kt | 12 ++++++++++-- .../java/com/nnbc123/core/initial/bean/InitInfo.java | 12 ++++++++++++ 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/nnbc123/app/home/fragment/HomeFragment2.kt b/app/src/main/java/com/nnbc123/app/home/fragment/HomeFragment2.kt index a1aa56bce..d8383af83 100644 --- a/app/src/main/java/com/nnbc123/app/home/fragment/HomeFragment2.kt +++ b/app/src/main/java/com/nnbc123/app/home/fragment/HomeFragment2.kt @@ -3,14 +3,12 @@ package com.nnbc123.app.home.fragment import android.graphics.Color import android.view.Gravity import android.widget.LinearLayout -import com.chuhai.utils.ktx.getColorById import com.chuhai.utils.ktx.singleClick import com.gyf.immersionbar.ImmersionBar import com.nnbc123.app.R import com.nnbc123.app.avroom.adapter.RoomVPAdapter import com.nnbc123.app.base.BaseBindingFragment import com.nnbc123.app.databinding.HomeFragmentBinding -import com.nnbc123.app.home.activity.MoreRoomActivity import com.nnbc123.app.home.adapter.HomeMagicIndicatorAdapter import com.nnbc123.app.home.helper.OpenRoomHelper import com.nnbc123.app.ui.search.SearchActivity @@ -19,6 +17,7 @@ import com.nnbc123.app.ui.widget.magicindicator.ViewPagerHelper import com.nnbc123.app.ui.widget.magicindicator.buildins.commonnavigator.CommonNavigator import com.nnbc123.core.DemoCache import com.nnbc123.core.UriProvider +import com.nnbc123.core.initial.InitialModel import com.nnbc123.core.statistic.StatisticManager import com.nnbc123.core.statistic.protocol.StatisticsProtocol import com.nnbc123.library.annatation.ActLayoutRes @@ -65,6 +64,9 @@ class HomeFragment2 : BaseBindingFragment() { commonNavigator.setTitleWrapContent(true) commonNavigator.setTitleGravity(Gravity.CENTER_VERTICAL) val magicIndicatorAdapter = HomeMagicIndicatorAdapter(context, tagList) + magicIndicatorAdapter.setOnItemSelectListener { position, view -> + mBinding.viewPager.currentItem = position + } magicIndicatorAdapter.normalColor = Color.parseColor("#696D7A") magicIndicatorAdapter.selectedColor = Color.parseColor("#2B2D33") commonNavigator.adapter = magicIndicatorAdapter @@ -74,5 +76,11 @@ class HomeFragment2 : BaseBindingFragment() { mBinding.viewPager.adapter = RoomVPAdapter(childFragmentManager, fragmentList) ViewPagerHelper.bind(mBinding.magicIndicator, mBinding.viewPager) + InitialModel.get().cacheInitInfo?.defaultTab?.let { + val tab = it - 1 + if (it >= 0 && it < tagList.size) { + mBinding.viewPager.currentItem = tab + } + } } } \ No newline at end of file diff --git a/core/src/main/java/com/nnbc123/core/initial/bean/InitInfo.java b/core/src/main/java/com/nnbc123/core/initial/bean/InitInfo.java index 04377b256..d2329fa46 100644 --- a/core/src/main/java/com/nnbc123/core/initial/bean/InitInfo.java +++ b/core/src/main/java/com/nnbc123/core/initial/bean/InitInfo.java @@ -228,6 +228,8 @@ public class InitInfo implements Serializable { private List h5Uris; + private int defaultTab; + // @SuppressWarnings("all") public InitInfo() { @@ -907,6 +909,7 @@ public class InitInfo implements Serializable { final Object this$trtcAppId = this.getTrtcAppId(); final Object other$trtcAppId = other.getTrtcAppId(); if (this$trtcAppId == null ? other$trtcAppId != null : !this$trtcAppId.equals(other$trtcAppId)) return false; + if (this.getDefaultTab() != other.getDefaultTab()) return false; return true; } @@ -991,9 +994,18 @@ public class InitInfo implements Serializable { result = result * PRIME + ($officialMsgUids == null ? 43 : $officialMsgUids.hashCode()); final Object $trtcAppId = this.getTrtcAppId(); result = result * PRIME + ($trtcAppId == null ? 43 : $trtcAppId.hashCode()); + result = result * PRIME + this.getDefaultTab(); return result; } + public int getDefaultTab() { + return defaultTab; + } + + public void setDefaultTab(int defaultTab) { + this.defaultTab = defaultTab; + } + @Override @SuppressWarnings("all") public String toString() {