我的页面增加点击事件处理
This commit is contained in:
@@ -114,9 +114,9 @@ class HomeViewModel : BaseViewModel() {
|
||||
)
|
||||
}
|
||||
|
||||
fun fastPickGameRoom() {
|
||||
fun fastPickGameRoom(mgId: Long? = null) {
|
||||
safeLaunch {
|
||||
_pickRoomLiveData.value = HomeModel.fastPickGameRoom()
|
||||
_pickRoomLiveData.value = HomeModel.fastPickGameRoom(mgId)
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -39,7 +39,7 @@ class MeViewModel : BaseViewModel() {
|
||||
fun requestMeCenterInfoList() {
|
||||
safeLaunch(
|
||||
block = {
|
||||
_meCenterInfoLiveData.value = transformList(HomeModel.requestMeCenterInfoList(), 4)
|
||||
_meCenterInfoLiveData.value = transformList(HomeModel.requestMeCenterInfoList(), 8)
|
||||
},
|
||||
onError = {
|
||||
_meCenterInfoLiveData.value = null
|
||||
|
@@ -4,6 +4,7 @@ import android.widget.ImageView
|
||||
import com.chad.library.adapter.base.BaseQuickAdapter
|
||||
import com.chad.library.adapter.base.BaseViewHolder
|
||||
import com.yizhuan.erban.R
|
||||
import com.yizhuan.erban.ui.im.RouterHandler
|
||||
import com.yizhuan.erban.ui.utils.load
|
||||
import com.yizhuan.xchat_android_core.room.bean.MeCenterInfo
|
||||
|
||||
@@ -16,7 +17,7 @@ class MeCenterAdapter :
|
||||
helper.getView<ImageView>(R.id.iv_pic).load(item.centerPic)
|
||||
helper.setText(R.id.tv_name, item.centerName)
|
||||
helper.itemView.setOnClickListener {
|
||||
|
||||
RouterHandler.handle(mContext, item.skipType, item.centerUrl)
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -7,20 +7,26 @@ import android.util.SparseArray
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import androidx.databinding.DataBindingUtil
|
||||
import androidx.fragment.app.activityViewModels
|
||||
import androidx.fragment.app.viewModels
|
||||
import androidx.recyclerview.widget.GridLayoutManager
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import androidx.viewpager.widget.PagerAdapter
|
||||
import com.chad.library.adapter.base.BaseQuickAdapter
|
||||
import com.yizhuan.erban.R
|
||||
import com.yizhuan.erban.UIHelper
|
||||
import com.yizhuan.erban.avroom.activity.AVRoomActivity
|
||||
import com.yizhuan.erban.base.BaseFragment
|
||||
import com.yizhuan.erban.databinding.FragmentMeBinding
|
||||
import com.yizhuan.erban.home.HomeViewModel
|
||||
import com.yizhuan.erban.home.MeViewModel
|
||||
import com.yizhuan.erban.home.activity.VisitorListActivity
|
||||
import com.yizhuan.erban.home.adapter.MeCenterAdapter
|
||||
import com.yizhuan.erban.home.adapter.MeGameAdapter
|
||||
import com.yizhuan.erban.home.helper.BannerHelper
|
||||
import com.yizhuan.erban.skill.activity.SkillHomeActivity
|
||||
import com.yizhuan.erban.skill.activity.SkillHomeActivity.Companion.start
|
||||
import com.yizhuan.erban.ui.pay.ChargeActivity
|
||||
import com.yizhuan.erban.ui.relation.AttentionListActivity
|
||||
import com.yizhuan.erban.ui.relation.FansListActivity
|
||||
import com.yizhuan.erban.ui.utils.ImageLoadUtils
|
||||
@@ -35,6 +41,8 @@ import com.yizhuan.xchat_android_core.manager.IMNetEaseManager
|
||||
import com.yizhuan.xchat_android_core.manager.RelationShipEvent
|
||||
import com.yizhuan.xchat_android_core.noble.NobleProtocol
|
||||
import com.yizhuan.xchat_android_core.noble.NobleUtil
|
||||
import com.yizhuan.xchat_android_core.pay.PayModel
|
||||
import com.yizhuan.xchat_android_core.pay.event.UpdateWalletInfoEvent
|
||||
import com.yizhuan.xchat_android_core.room.bean.MeCenterInfo
|
||||
import com.yizhuan.xchat_android_core.room.game.GameInfo
|
||||
import com.yizhuan.xchat_android_core.statistic.StatisticManager
|
||||
@@ -44,6 +52,7 @@ import com.yizhuan.xchat_android_core.user.bean.UserInfo
|
||||
import com.yizhuan.xchat_android_core.user.event.LoginUserInfoUpdateEvent
|
||||
import com.yizhuan.xchat_android_core.utils.StarUtils
|
||||
import com.yizhuan.xchat_android_library.rxbus.RxBusHelper
|
||||
import com.yizhuan.xchat_android_library.utils.FormatUtils
|
||||
import com.yizhuan.xchat_android_library.utils.ListUtils
|
||||
import org.greenrobot.eventbus.EventBus
|
||||
import org.greenrobot.eventbus.Subscribe
|
||||
@@ -64,6 +73,7 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
||||
private var mUserInfo: UserInfo? = null
|
||||
private lateinit var mBinding: FragmentMeBinding
|
||||
private val meViewModel: MeViewModel by viewModels()
|
||||
private val homeViewModel: HomeViewModel by activityViewModels()
|
||||
override fun getRootLayoutId(): Int {
|
||||
return R.layout.fragment_me
|
||||
}
|
||||
@@ -101,6 +111,10 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
||||
}
|
||||
)
|
||||
|
||||
val walletInfo = PayModel.get().currentWalletInfo
|
||||
if (walletInfo != null) {
|
||||
mBinding.tvDiamondNum.text = FormatUtils.formatBigInteger(walletInfo.diamondNum)
|
||||
}
|
||||
meViewModel.bannerLiveData.observe(viewLifecycleOwner) {
|
||||
BannerHelper.setBanner(mBinding.rollView, it)
|
||||
}
|
||||
@@ -113,6 +127,12 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
||||
setCenterInfoData(it)
|
||||
}
|
||||
|
||||
homeViewModel.pickRoomLiveData.observe(viewLifecycleOwner) {
|
||||
it?.let {
|
||||
AVRoomActivity.start(mContext, it.uid)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private fun setCenterInfoData(pagerList: List<List<MeCenterInfo>?>) {
|
||||
@@ -123,8 +143,10 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
||||
mBinding.magicIndicatorEntrance.setSelectedPage(0)
|
||||
mBinding.magicIndicatorEntrance.visibility =
|
||||
if (pagerList.size > 1) View.VISIBLE else View.INVISIBLE
|
||||
val cacheItemView = SparseArray<RecyclerView>()
|
||||
mBinding.viewPagerEntrance.adapter = object : PagerAdapter() {
|
||||
|
||||
val cacheItemView = SparseArray<RecyclerView>()
|
||||
|
||||
override fun getCount(): Int {
|
||||
return pagerList.size
|
||||
}
|
||||
@@ -198,6 +220,9 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
||||
)
|
||||
recyclerView.layoutManager = GridLayoutManager(context, 4)
|
||||
giftAdapter = MeGameAdapter()
|
||||
giftAdapter.setOnItemClickListener { _: BaseQuickAdapter<*, *>?, _: View?, position: Int ->
|
||||
homeViewModel.fastPickGameRoom(position.toLong())
|
||||
}
|
||||
recyclerView.adapter = giftAdapter
|
||||
cacheItemView.put(pagePos, recyclerView)
|
||||
} else {
|
||||
@@ -318,6 +343,12 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
||||
setUserData()
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
fun onWalletInfoUpdate(event: UpdateWalletInfoEvent?) {
|
||||
mBinding.tvDiamondNum.text = PayModel.get().currentWalletInfo?.diamondNum?.toString()
|
||||
?: "0"
|
||||
}
|
||||
|
||||
@SuppressLint("SetTextI18n")
|
||||
@Subscribe(threadMode = ThreadMode.MAIN, sticky = true)
|
||||
fun onVisitorUnreadCountEvent(event: VisitorUnreadCountEvent?) {
|
||||
@@ -367,6 +398,8 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
||||
SkillHomeActivity.PAGE_TYPE_SELF,
|
||||
AuthModel.get().currentUid
|
||||
)
|
||||
R.id.tv_user_visitor -> VisitorListActivity.start(mContext)
|
||||
R.id.me_item_wallet -> ChargeActivity.start(mContext)
|
||||
else -> {}
|
||||
}
|
||||
}
|
||||
|
@@ -27,7 +27,7 @@ class RoomGameFragment : BaseViewBindingFragment<FragmentRoomGameBinding>() {
|
||||
}
|
||||
}
|
||||
|
||||
private lateinit var roomHotAdapter : RoomGameAdapter
|
||||
private lateinit var roomHotAdapter: RoomGameAdapter
|
||||
private var page = 1
|
||||
private lateinit var rvDelegate: RVDelegate<HomeRoomInfo>
|
||||
private val pageSize = 20
|
||||
@@ -57,11 +57,11 @@ class RoomGameFragment : BaseViewBindingFragment<FragmentRoomGameBinding>() {
|
||||
homeViewModel.fastPickGameRoom()
|
||||
}
|
||||
|
||||
homeViewModel.pickRoomLiveData.observe(this, {
|
||||
homeViewModel.pickRoomLiveData.observe(this) {
|
||||
it?.let {
|
||||
AVRoomActivity.start(mContext, it.uid)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
override fun onResume() {
|
||||
|
@@ -10,26 +10,36 @@ import com.yizhuan.erban.UIHelper;
|
||||
import com.yizhuan.erban.audio.VoiceMatchActivity;
|
||||
import com.yizhuan.erban.avroom.activity.AVRoomActivity;
|
||||
import com.yizhuan.erban.avroom.recommendcard.MyRecommendCardActivity;
|
||||
import com.yizhuan.erban.base.BaseActivity;
|
||||
import com.yizhuan.erban.base.DialogManagerInterface;
|
||||
import com.yizhuan.erban.common.widget.dialog.DialogManager;
|
||||
import com.yizhuan.erban.decoration.view.DecorationStoreActivity;
|
||||
import com.yizhuan.erban.decoration.view.MyDecorationActivity;
|
||||
import com.yizhuan.erban.family.view.activity.FamilyHomeActivity;
|
||||
import com.yizhuan.erban.fansteam.FansTeamListActivity;
|
||||
import com.yizhuan.erban.home.activity.CollectionRoomActivity;
|
||||
import com.yizhuan.erban.home.activity.VisitorListActivity;
|
||||
import com.yizhuan.erban.home.helper.OpenRoomHelper;
|
||||
import com.yizhuan.erban.miniworld.activity.MiniWorldGuestPageActivity;
|
||||
import com.yizhuan.erban.miniworld.activity.MiniWorldMainActivity;
|
||||
import com.yizhuan.erban.module_hall.HallDataManager;
|
||||
import com.yizhuan.erban.module_hall.hall.activity.ModuleClanActivity;
|
||||
import com.yizhuan.erban.module_hall.hall.activity.ModuleHallActivity;
|
||||
import com.yizhuan.erban.public_chat_hall.activity.PublicChatHallHomeActivity;
|
||||
import com.yizhuan.erban.radish.signin.SignInActivity;
|
||||
import com.yizhuan.erban.radish.task.activity.TaskCenterActivity;
|
||||
import com.yizhuan.erban.relation.cp.activity.CpHomeActivity;
|
||||
import com.yizhuan.erban.relation.cp.activity.CpInviteRecordActivity;
|
||||
import com.yizhuan.erban.relation.cp.activity.CpTaskActivity;
|
||||
import com.yizhuan.erban.team.view.NimTeamMessageActivity;
|
||||
import com.yizhuan.erban.ui.login.BindPhoneActivity;
|
||||
import com.yizhuan.erban.ui.login.ShowBindPhoneActivity;
|
||||
import com.yizhuan.erban.ui.patriarch.PatriarchModeActivity;
|
||||
import com.yizhuan.erban.ui.patriarch.help.LimitEnterRoomHelper;
|
||||
import com.yizhuan.erban.ui.pay.ChargeActivity;
|
||||
import com.yizhuan.erban.ui.setting.FeedbackActivity;
|
||||
import com.yizhuan.erban.ui.setting.ModifyPwdActivity;
|
||||
import com.yizhuan.erban.ui.setting.ScheduleManageActivity;
|
||||
import com.yizhuan.erban.ui.user.UserInfoActivity;
|
||||
import com.yizhuan.erban.ui.webview.CommonWebViewActivity;
|
||||
import com.yizhuan.erban.ui.withdraw.BinderAlipayActivity;
|
||||
@@ -39,6 +49,7 @@ import com.yizhuan.xchat_android_core.DemoCache;
|
||||
import com.yizhuan.xchat_android_core.UriProvider;
|
||||
import com.yizhuan.xchat_android_core.auth.AuthModel;
|
||||
import com.yizhuan.xchat_android_core.community.event.SquareTaskEvent;
|
||||
import com.yizhuan.xchat_android_core.home.event.VisitorUnreadCountEvent;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.RouterType;
|
||||
import com.yizhuan.xchat_android_core.manager.AvRoomDataManager;
|
||||
import com.yizhuan.xchat_android_core.module_hall.hall.HallModel;
|
||||
@@ -296,6 +307,46 @@ public class RouterHandler {
|
||||
case RouterType.USER_BUBBLE:
|
||||
MyDecorationActivity.start(context, 4);
|
||||
break;
|
||||
case RouterType.MY_ROOM:
|
||||
//我的房间,开房
|
||||
StatisticManager.Instance().onEvent(StatisticsProtocol.EVENT_ME_INTO_MY_ROOM_CLICK, "我页_进入我的房间");
|
||||
OpenRoomHelper.openRoom((BaseActivity) context);
|
||||
break;
|
||||
case RouterType.COLLECTION_ROOM:
|
||||
//收藏的房间
|
||||
CollectionRoomActivity.start(context);
|
||||
break;
|
||||
case RouterType.MODULE_CLAN:
|
||||
//公会或房间主页
|
||||
if (HallDataManager.get().isHasClan()) {
|
||||
ModuleClanActivity.start(context);
|
||||
} else if (HallDataManager.get().hasLiveHall()) {
|
||||
ModuleHallActivity.start(context);
|
||||
} else {
|
||||
SingleToastUtil.showToast("你还没有公会或房间!");
|
||||
}
|
||||
break;
|
||||
case RouterType.PATRIARCH_MODE:
|
||||
//青少年模式
|
||||
PatriarchModeActivity.start(context);
|
||||
break;
|
||||
case RouterType.SCHEDULE_MANAGE:
|
||||
//赛程管理
|
||||
ScheduleManageActivity.Companion.start(context);
|
||||
break;
|
||||
case RouterType.VISITOR_LIST:
|
||||
//访客记录
|
||||
EventBus.getDefault().postSticky(new VisitorUnreadCountEvent(0));
|
||||
VisitorListActivity.start(context);
|
||||
break;
|
||||
case RouterType.CP_HOME:
|
||||
//CP主页
|
||||
CpHomeActivity.Companion.start(context);
|
||||
break;
|
||||
case RouterType.FANS_TEAM_LIST:
|
||||
//粉丝团列表
|
||||
FansTeamListActivity.start(context);
|
||||
break;
|
||||
default:
|
||||
SingleToastUtil.showToast("暂不支持哟!");
|
||||
return false;
|
||||
|
@@ -1,6 +1,9 @@
|
||||
package com.yizhuan.erban.ui.patriarch;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.graphics.Paint;
|
||||
import android.os.Bundle;
|
||||
|
||||
import com.netease.nim.uikit.StatusBarUtil;
|
||||
import com.yizhuan.erban.R;
|
||||
@@ -15,6 +18,11 @@ import com.yizhuan.xchat_android_library.annatation.ActLayoutRes;
|
||||
@ActLayoutRes(R.layout.activity_patriarch_mode)
|
||||
public class PatriarchModeActivity extends BaseBindingActivity<ActivityPatriarchModeBinding> {
|
||||
|
||||
public static void start(Context context) {
|
||||
Intent starter = new Intent(context, PatriarchModeActivity.class);
|
||||
context.startActivity(starter);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void init() {
|
||||
initWhiteTitleBar("青少年模式");
|
||||
|
@@ -356,7 +356,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_vertical"
|
||||
android:maxLines="1"
|
||||
android:text="@{String.valueOf(userInfo.fansNum)}"
|
||||
android:text="@{String.valueOf(userInfo.visitNum)}"
|
||||
android:textColor="@color/text_normal_c6c6e9"
|
||||
android:textSize="@dimen/sp_20"
|
||||
android:textStyle="bold"
|
||||
@@ -388,7 +388,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_vertical"
|
||||
android:maxLines="1"
|
||||
android:text="@{String.valueOf(userInfo.fansNum)}"
|
||||
android:text="@{String.valueOf(userInfo.inRoomNum)}"
|
||||
android:textColor="@color/text_normal_c6c6e9"
|
||||
android:textSize="@dimen/sp_20"
|
||||
android:textStyle="bold"
|
||||
@@ -426,6 +426,7 @@
|
||||
app:layout_constraintTop_toBottomOf="@id/ll_user_relation">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_diamond_num"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="50dp"
|
||||
@@ -505,7 +506,8 @@
|
||||
<androidx.viewpager.widget.ViewPager
|
||||
android:id="@+id/view_pager_entrance"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="130dp" />
|
||||
android:layout_marginTop="10dp"
|
||||
android:layout_height="150dp" />
|
||||
|
||||
<com.yizhuan.erban.home.widget.MePageIndicatorView
|
||||
android:id="@+id/magic_indicator_entrance"
|
||||
|
@@ -22,7 +22,7 @@
|
||||
android:id="@+id/tv_name"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="6dp"
|
||||
android:layout_marginTop="4dp"
|
||||
android:ellipsize="end"
|
||||
android:gravity="center"
|
||||
android:includeFontPadding="false"
|
||||
|
@@ -139,9 +139,9 @@ object HomeModel : BaseModel() {
|
||||
api.getCollectRoom(AuthModel.get().currentUid, pageNum, pageSize)
|
||||
}
|
||||
|
||||
suspend fun fastPickGameRoom(): HomeRoomInfo? =
|
||||
suspend fun fastPickGameRoom(mgId:Long?): HomeRoomInfo? =
|
||||
launchRequest {
|
||||
api.fastPickGameRoom()
|
||||
api.fastPickGameRoom(mgId)
|
||||
}
|
||||
|
||||
suspend fun getHomeSingleAnchorList(): List<HomeRoomInfo>? =
|
||||
@@ -313,7 +313,7 @@ object HomeModel : BaseModel() {
|
||||
* @return
|
||||
*/
|
||||
@GET("home/fastPick")
|
||||
suspend fun fastPickGameRoom(): ServiceResult<HomeRoomInfo>
|
||||
suspend fun fastPickGameRoom(@Query("mgId") mgId: Long?): ServiceResult<HomeRoomInfo>
|
||||
|
||||
/**
|
||||
* 首页人气主播
|
||||
|
@@ -220,4 +220,40 @@ public class RouterType {
|
||||
* 65-资料卡装扮
|
||||
*/
|
||||
public static final int USER_BUBBLE = 56;
|
||||
|
||||
/**
|
||||
* 64我的房间
|
||||
*/
|
||||
public static final int MY_ROOM = 64;
|
||||
|
||||
/**
|
||||
* 66-收藏的房间
|
||||
*/
|
||||
public static final int COLLECTION_ROOM = 65;
|
||||
/**
|
||||
* 67-我的公会
|
||||
*/
|
||||
public static final int MODULE_CLAN = 67;
|
||||
/**
|
||||
* 68-青少年模式
|
||||
*/
|
||||
public static final int PATRIARCH_MODE = 68;
|
||||
/**
|
||||
* 69-赛程管理
|
||||
*/
|
||||
public static final int SCHEDULE_MANAGE = 69;
|
||||
/**
|
||||
* 70-访客记录
|
||||
*/
|
||||
public static final int VISITOR_LIST = 70;
|
||||
|
||||
/**
|
||||
* 71-CP主页
|
||||
*/
|
||||
public static final int CP_HOME = 71;
|
||||
|
||||
/**
|
||||
* 71-粉丝团列表
|
||||
*/
|
||||
public static final int FANS_TEAM_LIST = 72;
|
||||
}
|
||||
|
@@ -93,6 +93,14 @@ public class UserInfo implements Serializable {
|
||||
private long followNum;
|
||||
//粉丝数
|
||||
private long fansNum;
|
||||
//访客数量
|
||||
@Getter
|
||||
@Setter
|
||||
private long visitNum;
|
||||
//进房历史记录数量
|
||||
@Getter
|
||||
@Setter
|
||||
private long inRoomNum;
|
||||
//人气值
|
||||
private long fortune;
|
||||
//1普通账号,2官方账号,3机器账号 ,4公会账号
|
||||
|
Reference in New Issue
Block a user