diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index cb2e83075..aecac28b1 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -410,11 +410,6 @@ android:targetActivity="com.mango.core.pay.PaymentActivity" /> - - private Runnable touchRunnable; { - fragmentArray.put(MainTabType.TAB_TYPE_HOME, new HomeFragment()); + fragmentArray.put(MainTabType.TAB_TYPE_HOME, new TempRoomHotFragment()); fragmentArray.put(MainTabType.TAB_TYPE_MSG, new ContactsListFragment()); fragmentArray.put(MainTabType.TAB_TYPE_SQUARE, new SquareFragment()); fragmentArray.put(MainTabType.TAB_TYPE_ME, new MeFragment()); diff --git a/app/src/main/java/com/mango/moshen/home/adapter/RoomHotAdapter.kt b/app/src/main/java/com/mango/moshen/home/adapter/RoomHotAdapter.kt index 1767349af..92070f31d 100644 --- a/app/src/main/java/com/mango/moshen/home/adapter/RoomHotAdapter.kt +++ b/app/src/main/java/com/mango/moshen/home/adapter/RoomHotAdapter.kt @@ -17,8 +17,8 @@ import com.mango.core.utils.TextUtils class RoomHotAdapter : BaseMultiItemQuickAdapter(null) { init { - addItemType(HomeRoomInfo.TYPE_ROOM, R.layout.item_room_hot) - addItemType(HomeRoomInfo.TYPE_BROADCAST, R.layout.item_room_hot) + addItemType(HomeRoomInfo.TYPE_ROOM, R.layout.item_room_hot_temp) + addItemType(HomeRoomInfo.TYPE_BROADCAST, R.layout.item_room_hot_temp) addItemType(HomeRoomInfo.TYPE_BANNER, R.layout.item_room_banner) } @@ -31,7 +31,7 @@ class RoomHotAdapter : BaseMultiItemQuickAdapter(n .onEvent(StatisticsProtocol.EVENT_RM_ROOM_SUCCESS, "热门进入房间") } - helper.getView(R.id.iv_room_image).load(item.avatar) + helper.getView(R.id.iv_room_image).load(item.avatar,round = 8f) helper.setText(R.id.tv_online_number, "${item.onlineNum}") helper.setText(R.id.tv_room_title, item.title) helper.setText(R.id.tv_id, "ID:${item.erbanNo}") @@ -41,7 +41,7 @@ class RoomHotAdapter : BaseMultiItemQuickAdapter(n helper.setVisible(R.id.iv_room_tag, !TextUtils.isEmptyText(item.tagPict)) helper.getView(R.id.iv_room_tag).load(item.tagPict) - val avatars: Array = arrayOf( + /* val avatars: Array = arrayOf( helper.getView(R.id.iv_avatar_0), helper.getView(R.id.iv_avatar_1), helper.getView(R.id.iv_avatar_2), @@ -52,7 +52,7 @@ class RoomHotAdapter : BaseMultiItemQuickAdapter(n val avatarUrl = item.micUsers?.getOrNull(i)?.avatar avatars[i].isGone = avatarUrl.isNullOrBlank() avatars[i].load(avatarUrl) - } + }*/ } else { BannerHelper.setBanner(helper.getView(R.id.roll_view), item.bannerVoList) } diff --git a/app/src/main/java/com/mango/moshen/home/fragment/TempRoomHotFragment.kt b/app/src/main/java/com/mango/moshen/home/fragment/TempRoomHotFragment.kt new file mode 100644 index 000000000..e6f99037a --- /dev/null +++ b/app/src/main/java/com/mango/moshen/home/fragment/TempRoomHotFragment.kt @@ -0,0 +1,93 @@ +package com.mango.moshen.home.fragment + +import android.os.Bundle +import androidx.fragment.app.activityViewModels +import androidx.recyclerview.widget.LinearLayoutManager +import com.mango.core.DemoCache +import com.mango.moshen.base.BaseViewBindingFragment +import com.mango.moshen.common.EmptyViewHelper +import com.mango.moshen.databinding.FragmentRoomHotBinding +import com.mango.moshen.home.HomeViewModel +import com.mango.moshen.home.adapter.RoomHotAdapter +import com.mango.moshen.ui.utils.RVDelegate +import com.mango.core.home.bean.HomeRoomInfo +import com.mango.core.home.event.RefreshHomeDataEvent +import com.mango.core.statistic.StatisticManager +import com.mango.core.statistic.protocol.StatisticsProtocol +import com.mango.moshen.ui.search.SearchActivity +import org.greenrobot.eventbus.EventBus +import org.greenrobot.eventbus.Subscribe +import org.greenrobot.eventbus.ThreadMode + + +class TempRoomHotFragment : BaseViewBindingFragment() { + + companion object { + fun newInstance(): TempRoomHotFragment { + val args = Bundle() + val fragment = TempRoomHotFragment() + fragment.arguments = args + return fragment + } + } + + private lateinit var roomHotAdapter : RoomHotAdapter + private lateinit var rvDelegate: RVDelegate + + private var page = 1 + private val pageSize = Int.MAX_VALUE + private val homeViewModel: HomeViewModel by activityViewModels() + + override fun init() { + + roomHotAdapter = RoomHotAdapter() + rvDelegate = RVDelegate.Builder() + .setAdapter(roomHotAdapter) + .setRecyclerView(binding.recyclerView) + .setEmptyView(EmptyViewHelper.createEmptyView(context, "暂无房间")) + .setLayoutManager(LinearLayoutManager(mContext)) + .setRefreshLayout(binding.swipeRefresh) + .setPageSize(pageSize) + .build() + + binding.swipeRefresh.isRefreshing = true + binding.swipeRefresh.setOnRefreshListener { + loadData(true) + } + homeViewModel.hotRoomLiveData.observe(this) { + rvDelegate.loadData(it) + } + binding.tvSearch.setOnClickListener { + StatisticManager.Instance().onEvent(StatisticsProtocol.EVENT_SEARCH, "进入搜索页") + SearchActivity.start(activity) + //为啥触发条件这么恶心 + if (DemoCache.readAnchorCardView() == 0) { + DemoCache.saveAnchorCardView(1) + } + } + } + + override fun onResume() { + super.onResume() + loadData(true) + } + + private fun loadData(isRefresh: Boolean) { + homeViewModel.getHotRoom(page, pageSize) + } + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + EventBus.getDefault().register(this) + } + + override fun onDestroy() { + super.onDestroy() + EventBus.getDefault().unregister(this) + } + + @Subscribe(threadMode = ThreadMode.MAIN) + fun onRefreshHomeDataEvent(event: RefreshHomeDataEvent?) { + if (isResumed) loadData(true) + } +} \ No newline at end of file diff --git a/app/src/main/res/drawable-xhdpi/splash_logo.png b/app/src/main/res/drawable-xhdpi/splash_logo.png index 3d6d02e40..26e088c51 100644 Binary files a/app/src/main/res/drawable-xhdpi/splash_logo.png and b/app/src/main/res/drawable-xhdpi/splash_logo.png differ diff --git a/app/src/main/res/drawable/shape_room_temp.xml b/app/src/main/res/drawable/shape_room_temp.xml new file mode 100644 index 000000000..0cde78408 --- /dev/null +++ b/app/src/main/res/drawable/shape_room_temp.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/app/src/main/res/layout/fragment_room_hot.xml b/app/src/main/res/layout/fragment_room_hot.xml index fe01f4965..3c7c09956 100644 --- a/app/src/main/res/layout/fragment_room_hot.xml +++ b/app/src/main/res/layout/fragment_room_hot.xml @@ -1,7 +1,49 @@ - + android:clipToPadding="false" + android:orientation="vertical"> + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/fragment_temp_room_hot.xml b/app/src/main/res/layout/fragment_temp_room_hot.xml new file mode 100644 index 000000000..fe01f4965 --- /dev/null +++ b/app/src/main/res/layout/fragment_temp_room_hot.xml @@ -0,0 +1,7 @@ + + + diff --git a/app/src/main/res/layout/item_room_hot_temp.xml b/app/src/main/res/layout/item_room_hot_temp.xml new file mode 100644 index 000000000..2c7f3ff1d --- /dev/null +++ b/app/src/main/res/layout/item_room_hot_temp.xml @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/mipmap-xhdpi/ic_logo_main.png b/app/src/main/res/mipmap-xhdpi/ic_logo_main.png new file mode 100644 index 000000000..6c7e9aae1 Binary files /dev/null and b/app/src/main/res/mipmap-xhdpi/ic_logo_main.png differ diff --git a/app/src/main/res/mipmap-xhdpi/ic_search_main.png b/app/src/main/res/mipmap-xhdpi/ic_search_main.png index 8d7ddea37..3d6ff6edf 100644 Binary files a/app/src/main/res/mipmap-xhdpi/ic_search_main.png and b/app/src/main/res/mipmap-xhdpi/ic_search_main.png differ diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 709dcb3f4..ac193198c 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -560,7 +560,7 @@ #FFF4F4FA - #F3F5FA + #FFFFFF #FFF1F1FA