个播PK房间UI实现
@@ -0,0 +1,42 @@
|
||||
package com.yizhuan.erban.avroom.adapter
|
||||
|
||||
import android.content.Context
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.yizhuan.erban.R
|
||||
import com.yizhuan.xchat_android_core.bean.RoomQueueInfo
|
||||
|
||||
|
||||
class SingleRoomPKMicroViewAdapter(context: Context?) : BaseMicroViewAdapter(context) {
|
||||
|
||||
/**
|
||||
* Set LayoutManager and bind this to RecyclerView
|
||||
*/
|
||||
override fun bindToRecyclerView(recyclerView: RecyclerView) {
|
||||
val layoutManager = LinearLayoutManager(context)
|
||||
recyclerView.layoutManager = layoutManager
|
||||
recyclerView.adapter = this
|
||||
}
|
||||
|
||||
override fun getItemCount() = 1
|
||||
|
||||
override fun microType() = MICRO_TYPE_SINGLE
|
||||
|
||||
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
|
||||
return SingleAnchorBossMicroViewHolder(
|
||||
LayoutInflater.from(parent.context)
|
||||
.inflate(R.layout.item_micro_single_room_pk_boss, parent, false)
|
||||
)
|
||||
}
|
||||
|
||||
inner class SingleAnchorBossMicroViewHolder internal constructor(itemView: View) :
|
||||
NormalMicroViewHolder(itemView) {
|
||||
|
||||
public override fun bind(info: RoomQueueInfo, position: Int) {
|
||||
super.bind(info, position)
|
||||
}
|
||||
}
|
||||
}
|
@@ -9,6 +9,7 @@ import androidx.fragment.app.viewModels
|
||||
import com.yizhuan.erban.R
|
||||
import com.yizhuan.erban.avroom.adapter.OnMicroItemClickListener
|
||||
import com.yizhuan.erban.avroom.adapter.SingleAnchorMicroViewAdapter
|
||||
import com.yizhuan.erban.avroom.adapter.SingleRoomPKMicroViewAdapter
|
||||
import com.yizhuan.erban.avroom.dialog.RequestUpMicDialog
|
||||
import com.yizhuan.erban.avroom.firstcharge.FirstChargePrizeDialog
|
||||
import com.yizhuan.erban.avroom.presenter.SingleRoomPresenter
|
||||
@@ -78,7 +79,7 @@ class SingleRoomFragment : BaseRoomFragment<ISingleRoomView?, SingleRoomPresente
|
||||
|
||||
@SuppressLint("CheckResult")
|
||||
override fun initiate() {
|
||||
gameBinding.microView.bindAdapter(SingleAnchorMicroViewAdapter(context))
|
||||
gameBinding.microView.bindAdapter(SingleRoomPKMicroViewAdapter(context))
|
||||
super.initiate()
|
||||
mvpPresenter?.getBannerList()
|
||||
initSpeedyMessage(gameBinding.flSpeedyMessage)
|
||||
|
@@ -12,32 +12,23 @@ import android.widget.FrameLayout
|
||||
import android.widget.PopupWindow
|
||||
import androidx.constraintlayout.widget.ConstraintLayout
|
||||
import androidx.core.view.isVisible
|
||||
import androidx.core.view.updateLayoutParams
|
||||
import androidx.lifecycle.Observer
|
||||
import com.netease.nim.uikit.common.util.sys.ScreenUtil
|
||||
import com.netease.nim.uikit.common.util.sys.TimeUtil
|
||||
import com.yizhuan.erban.R
|
||||
import com.yizhuan.erban.avroom.activity.AVRoomActivity
|
||||
import com.yizhuan.erban.common.widget.DragLayout
|
||||
import com.yizhuan.erban.avroom.adapter.SingleRoomPKMicroViewAdapter
|
||||
import com.yizhuan.erban.databinding.LayoutSingleRoomPkBoardViewBinding
|
||||
import com.yizhuan.erban.ui.utils.ImageLoadUtils
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.RoomPkBean
|
||||
import com.yizhuan.xchat_android_core.manager.AvRoomDataManager
|
||||
import com.yizhuan.xchat_android_core.room.anotherroompk.ShowGiftDialogEvent
|
||||
import com.yizhuan.xchat_android_core.room.anotherroompk.ShowUserInfoDialogEvent
|
||||
import com.yizhuan.xchat_android_core.utils.CurrentTimeUtils
|
||||
import com.yizhuan.xchat_android_core.utils.subAndReplaceDot
|
||||
import com.yizhuan.xchat_android_library.rxbus.RxBus
|
||||
import com.yizhuan.xchat_android_library.utils.CommonUtils
|
||||
import io.reactivex.Observable
|
||||
import io.reactivex.android.schedulers.AndroidSchedulers
|
||||
import io.reactivex.disposables.Disposable
|
||||
import java.util.*
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
class SingleRoomPKBoardView @JvmOverloads constructor(
|
||||
context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0
|
||||
) : DragLayout(context, attrs, defStyleAttr) {
|
||||
) : FrameLayout(context, attrs, defStyleAttr) {
|
||||
|
||||
private val binding = LayoutSingleRoomPkBoardViewBinding.inflate(LayoutInflater.from(context))
|
||||
private val observer = Observer<RoomPkBean> { updateView(it) }
|
||||
@@ -46,30 +37,10 @@ class SingleRoomPKBoardView @JvmOverloads constructor(
|
||||
private var roomPkBean: RoomPkBean? = null
|
||||
|
||||
init {
|
||||
addView(binding.root, LayoutParams(ScreenUtil.dip2px(339f), ScreenUtil.dip2px(233f)))
|
||||
//注意这里需要先改变Style,再订阅数据
|
||||
binding.viewRankListCharmLeft.showCharmStyle()
|
||||
binding.viewRankListCharmRight.showCharmStyle()
|
||||
addView(binding.root, LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)
|
||||
AvRoomDataManager.get().roomPkLiveData.observeForever(observer)
|
||||
binding.ivDetails.setOnClickListener {
|
||||
if (CommonUtils.isFastDoubleClick(1000)) return@setOnClickListener
|
||||
binding.groupRank.isVisible = !binding.groupRank.isVisible
|
||||
if (binding.groupRank.isVisible) {
|
||||
binding.clRoot.setBackgroundResource(R.drawable.bg_room_pk_board)
|
||||
binding.clRoot.updateLayoutParams<FrameLayout.LayoutParams> {
|
||||
width = ScreenUtil.dip2px(339f)
|
||||
height = ScreenUtil.dip2px(233f)
|
||||
}
|
||||
} else {
|
||||
binding.clRoot.setBackgroundResource(R.drawable.bg_room_pk_board_small)
|
||||
binding.clRoot.updateLayoutParams<FrameLayout.LayoutParams> {
|
||||
width = ScreenUtil.dip2px(339f)
|
||||
height = ScreenUtil.dip2px(137f)
|
||||
}
|
||||
}
|
||||
binding.ivDetails.animate().rotationBy(180f).start()
|
||||
}
|
||||
binding.ivHelp.setOnClickListener { showHelpPopup() }
|
||||
|
||||
/* binding.ivHelp.setOnClickListener { showHelpPopup() }
|
||||
|
||||
binding.ivAvatarLeft.setOnClickListener {
|
||||
roomPkBean?.let {
|
||||
@@ -81,17 +52,14 @@ class SingleRoomPKBoardView @JvmOverloads constructor(
|
||||
roomPkBean?.let {
|
||||
RxBus.get().post(ShowUserInfoDialogEvent(it.aUid.toString()))
|
||||
}
|
||||
}
|
||||
}*/
|
||||
|
||||
binding.tvGoAnotherRoom.setOnClickListener {
|
||||
/* binding.tvGoAnotherRoom.setOnClickListener {
|
||||
roomPkBean?.let {
|
||||
AVRoomActivity.start(context, it.aUid)
|
||||
}
|
||||
}
|
||||
}*/
|
||||
|
||||
binding.tvSendGift.setOnClickListener {
|
||||
RxBus.get().post(ShowGiftDialogEvent())
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -104,24 +72,9 @@ class SingleRoomPKBoardView @JvmOverloads constructor(
|
||||
@SuppressLint("SetTextI18n")
|
||||
private fun updateView(roomPkBean: RoomPkBean?) {
|
||||
this.roomPkBean = roomPkBean
|
||||
binding.tvRoomNameLeft.text = roomPkBean?.cTitle.subAndReplaceDot(7)
|
||||
ImageLoadUtils.loadImage(
|
||||
context,
|
||||
roomPkBean?.cAvatar,
|
||||
binding.ivAvatarLeft,
|
||||
R.drawable.default_avatar
|
||||
)
|
||||
binding.viewRankListCharmLeft.updateData(roomPkBean?.crRank)
|
||||
|
||||
binding.viewRankListContributeLeft.updateData(roomPkBean?.csRank)
|
||||
|
||||
binding.tvRoomNameRight.text = roomPkBean?.aTitle.subAndReplaceDot(7)
|
||||
ImageLoadUtils.loadImage(
|
||||
context,
|
||||
roomPkBean?.aAvatar,
|
||||
binding.ivAvatarRight,
|
||||
R.drawable.default_avatar
|
||||
)
|
||||
binding.viewRankListCharmRight.updateData(roomPkBean?.arRank)
|
||||
binding.viewRankListContributeRight.updateData(roomPkBean?.asRank)
|
||||
|
||||
binding.pbScore.progress = ((roomPkBean?.cPercent ?: 0.5f) * 100).toInt()
|
||||
@@ -159,7 +112,7 @@ class SingleRoomPKBoardView @JvmOverloads constructor(
|
||||
|
||||
try {
|
||||
helpPopupWindow.showAsDropDown(
|
||||
binding.viewHelpAnchor,
|
||||
binding.tvTime,
|
||||
0,
|
||||
0,
|
||||
Gravity.START or Gravity.BOTTOM
|
||||
|
@@ -16,7 +16,8 @@ class SingleRoomPKRankListView @JvmOverloads constructor(
|
||||
context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0
|
||||
) : FrameLayout(context, attrs, defStyleAttr) {
|
||||
|
||||
private val binding = LayoutSingleRoomPkRankListViewBinding.inflate(LayoutInflater.from(context))
|
||||
private val binding =
|
||||
LayoutSingleRoomPkRankListViewBinding.inflate(LayoutInflater.from(context))
|
||||
private val tvValues = arrayOf(binding.tvValue1, binding.tvValue2, binding.tvValue3)
|
||||
private val ivAvatars = arrayOf(binding.ivAvatar1, binding.ivAvatar2, binding.ivAvatar3)
|
||||
private var defaultAvatarRes = R.drawable.bg_room_pk_rank_contribute_default
|
||||
@@ -33,16 +34,10 @@ class SingleRoomPKRankListView @JvmOverloads constructor(
|
||||
}
|
||||
|
||||
fun showCharmStyle() {
|
||||
binding.tvValue1.setBackgroundResource(R.drawable.bg_room_pk_charm)
|
||||
binding.tvValue2.setBackgroundResource(R.drawable.bg_room_pk_charm)
|
||||
binding.tvValue3.setBackgroundResource(R.drawable.bg_room_pk_charm)
|
||||
binding.viewBg1.setBackgroundResource(R.drawable.bg_room_pk_rank_charm1)
|
||||
binding.viewBg2.setBackgroundResource(R.drawable.bg_room_pk_rank_charm2)
|
||||
binding.viewBg3.setBackgroundResource(R.drawable.bg_room_pk_rank_charm2)
|
||||
binding.ivAvatar1.setImageResource(R.drawable.bg_room_pk_rank_charm_default)
|
||||
binding.ivAvatar2.setImageResource(R.drawable.bg_room_pk_rank_charm_default)
|
||||
binding.ivAvatar3.setImageResource(R.drawable.bg_room_pk_rank_charm_default)
|
||||
defaultAvatarRes = R.drawable.bg_room_pk_rank_charm_default
|
||||
binding.ivAvatar1.setImageResource(R.drawable.single_room_pk_bg_blue_mic)
|
||||
binding.ivAvatar2.setImageResource(R.drawable.single_room_pk_bg_blue_mic)
|
||||
binding.ivAvatar3.setImageResource(R.drawable.single_room_pk_bg_blue_mic)
|
||||
defaultAvatarRes = R.drawable.single_room_pk_bg_blue_mic
|
||||
}
|
||||
|
||||
fun updateData(data: List<RoomPkBean.RankBean>?) {
|
||||
|
@@ -35,9 +35,8 @@ class SingleRoomPKSearchActivity : BaseViewBindingActivity<ActivitySingleRoomPkS
|
||||
private lateinit var rvDelegate: RVDelegate<SimpleRoomInfo>
|
||||
private var pageNum = 1
|
||||
private val pageSize = 20
|
||||
private val roomPKSearchAdapter = SingleRoomPKSearchAdapter()
|
||||
private lateinit var roomPKSearchAdapter: SingleRoomPKSearchAdapter
|
||||
private var searchKey: String? = null
|
||||
private var currRoomInfo: SimpleRoomInfo? = null
|
||||
override fun init() {
|
||||
|
||||
window.setLayout(
|
||||
@@ -45,7 +44,7 @@ class SingleRoomPKSearchActivity : BaseViewBindingActivity<ActivitySingleRoomPkS
|
||||
WindowManager.LayoutParams.WRAP_CONTENT
|
||||
)
|
||||
window.setGravity(Gravity.BOTTOM)
|
||||
|
||||
roomPKSearchAdapter = SingleRoomPKSearchAdapter()
|
||||
rvDelegate = RVDelegate.Builder<SimpleRoomInfo>()
|
||||
.setPageSize(pageSize)
|
||||
.setEmptyView(EmptyViewHelper.createEmptyView(this, "暂无搜索内容"))
|
||||
@@ -60,28 +59,15 @@ class SingleRoomPKSearchActivity : BaseViewBindingActivity<ActivitySingleRoomPkS
|
||||
roomPKSearchAdapter.getItem(position)?.let {
|
||||
when (view.id) {
|
||||
R.id.iv_avatar -> UserInfoActivity.Companion.start(this, it.roomUid)
|
||||
R.id.check_box -> {
|
||||
val isChecked = (view as CheckBox).isChecked
|
||||
roomPKSearchAdapter.data.forEach { roomInfo ->
|
||||
roomInfo.checked = it.roomUid == roomInfo.roomUid && isChecked
|
||||
}
|
||||
binding.tvOk.isEnabled = isChecked
|
||||
currRoomInfo = if (isChecked) it else null
|
||||
roomPKSearchAdapter.notifyDataSetChanged()
|
||||
R.id.tv_select -> {
|
||||
setResult(RESULT_OK, Intent().putExtra(KEY_ROOM_INFO, it))
|
||||
finish()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
binding.ivBack.setOnClickListener { finish() }
|
||||
binding.tvOk.setOnClickListener {
|
||||
if (currRoomInfo == null) {
|
||||
"请选择PK对象".toast()
|
||||
return@setOnClickListener
|
||||
}
|
||||
setResult(RESULT_OK, Intent().putExtra(KEY_ROOM_INFO, currRoomInfo))
|
||||
finish()
|
||||
}
|
||||
|
||||
binding.ivSearch.setOnClickListener {
|
||||
searchKey = binding.editSearch.text?.toString()
|
||||
@@ -93,7 +79,12 @@ class SingleRoomPKSearchActivity : BaseViewBindingActivity<ActivitySingleRoomPkS
|
||||
@SuppressLint("CheckResult")
|
||||
private fun loadData(isRefresh: Boolean) {
|
||||
pageNum = if (isRefresh) 1 else pageNum + 1
|
||||
SingleRoomPKModel.searchPermitRoom(searchKey, AvRoomDataManager.get().roomUid, pageNum, pageSize)
|
||||
SingleRoomPKModel.searchPermitRoom(
|
||||
searchKey,
|
||||
AvRoomDataManager.get().roomUid,
|
||||
pageNum,
|
||||
pageSize
|
||||
)
|
||||
.compose(bindToLifecycle())
|
||||
.subscribe({
|
||||
rvDelegate.loadData(it, isRefresh)
|
||||
|
@@ -13,8 +13,7 @@ class SingleRoomPKSearchAdapter :
|
||||
override fun convert(helper: BaseViewHolder, item: SimpleRoomInfo) {
|
||||
helper.setText(R.id.tv_room_title,item.title.subAndReplaceDot(7))
|
||||
.setText(R.id.tv_room_id,"大鹅号:${item.erbanNo}")
|
||||
.setChecked(R.id.check_box,item.checked)
|
||||
ImageLoadUtils.loadImage(mContext,item.avatar,helper.getView(R.id.iv_avatar))
|
||||
helper.addOnClickListener(R.id.iv_avatar,R.id.check_box)
|
||||
helper.addOnClickListener(R.id.iv_avatar,R.id.tv_select)
|
||||
}
|
||||
}
|
@@ -20,9 +20,6 @@ class RoomCommonAdapter : BaseQuickAdapter<HomeRoomInfo, BaseViewHolder>(R.layou
|
||||
getView<ImageView>(R.id.iv_room_image).load(item.avatar)
|
||||
setText(R.id.tv_online_number, "${item.onlineNum}")
|
||||
setText(R.id.tv_room_title, item.title)
|
||||
itemView.setOnClickListener {
|
||||
AVRoomActivity.start(mContext, item.roomUid)
|
||||
}
|
||||
setText(R.id.tv_id, "ID:${item.erbanNo}")
|
||||
}
|
||||
helper.setVisible(R.id.tv_in_pk, item.isCrossPking)
|
||||
|
BIN
app/src/main/res/drawable-xhdpi/single_room_pk_bg_attention.png
Normal file
After Width: | Height: | Size: 7.6 KiB |
After Width: | Height: | Size: 5.0 KiB |
BIN
app/src/main/res/drawable-xhdpi/single_room_pk_bg_blue_mic.png
Normal file
After Width: | Height: | Size: 5.1 KiB |
BIN
app/src/main/res/drawable-xhdpi/single_room_pk_bg_board.png
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
app/src/main/res/drawable-xhdpi/single_room_pk_bg_find_him.png
Normal file
After Width: | Height: | Size: 5.9 KiB |
BIN
app/src/main/res/drawable-xhdpi/single_room_pk_bg_mvp.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
app/src/main/res/drawable-xhdpi/single_room_pk_bg_pb_blue.png
Normal file
After Width: | Height: | Size: 605 B |
BIN
app/src/main/res/drawable-xhdpi/single_room_pk_bg_pb_red.png
Normal file
After Width: | Height: | Size: 673 B |
BIN
app/src/main/res/drawable-xhdpi/single_room_pk_bg_red_mic.png
Normal file
After Width: | Height: | Size: 5.1 KiB |
BIN
app/src/main/res/drawable-xhdpi/single_room_pk_bg_rule.png
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
app/src/main/res/drawable-xhdpi/single_room_pk_ic_blue_star.png
Normal file
After Width: | Height: | Size: 3.3 KiB |
BIN
app/src/main/res/drawable-xhdpi/single_room_pk_ic_red_star.png
Normal file
After Width: | Height: | Size: 3.4 KiB |
BIN
app/src/main/res/drawable-xhdpi/single_room_pk_ic_vs.png
Normal file
After Width: | Height: | Size: 20 KiB |
11
app/src/main/res/drawable/single_room_pk_bg_board_pb.xml
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<!-- 定义轨道的背景 -->
|
||||
<item android:id="@android:id/background">
|
||||
<bitmap android:src="@drawable/single_room_pk_bg_pb_blue"/>
|
||||
</item>
|
||||
<!-- 定义轨道上已完成部分的样式 -->
|
||||
<item android:id="@android:id/progress">
|
||||
<bitmap android:src="@drawable/single_room_pk_bg_pb_red"/>
|
||||
</item>
|
||||
</layer-list>
|
@@ -63,28 +63,6 @@
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/edit_search" />
|
||||
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="83dp"
|
||||
android:background="@drawable/bg_room_pk_bottom"
|
||||
app:layout_constraintBottom_toBottomOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_ok"
|
||||
android:layout_width="300dp"
|
||||
android:layout_height="40dp"
|
||||
android:layout_marginTop="50dp"
|
||||
android:layout_marginBottom="38dp"
|
||||
android:background="@drawable/common_single_room_pk_btn_bg"
|
||||
android:enabled="false"
|
||||
android:gravity="center"
|
||||
android:text="确认选择"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="18sp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</FrameLayout>
|
145
app/src/main/res/layout/item_micro_single_room_pk_boss.xml
Normal file
@@ -0,0 +1,145 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/micro_layout"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
tools:background="@color/color_activity_blue_bg">
|
||||
|
||||
<com.opensource.svgaplayer.SVGAImageView
|
||||
android:id="@+id/iv_halo"
|
||||
android:layout_width="135dp"
|
||||
android:layout_height="135dp"
|
||||
app:layout_constraintBottom_toBottomOf="@id/avatar"
|
||||
app:layout_constraintEnd_toEndOf="@id/avatar"
|
||||
app:layout_constraintStart_toStartOf="@id/avatar"
|
||||
app:layout_constraintTop_toTopOf="@id/avatar" />
|
||||
|
||||
<com.opensource.svgaplayer.SVGAImageView
|
||||
android:id="@+id/svga_head_wear"
|
||||
android:layout_width="135dp"
|
||||
android:layout_height="135dp"
|
||||
app:autoPlay="true"
|
||||
app:layout_constraintBottom_toBottomOf="@id/avatar"
|
||||
app:layout_constraintEnd_toEndOf="@id/avatar"
|
||||
app:layout_constraintStart_toStartOf="@id/avatar"
|
||||
app:layout_constraintTop_toTopOf="@id/avatar"
|
||||
app:loopCount="0"
|
||||
app:source="svga/single_headware.svga" />
|
||||
|
||||
<com.yizhuan.erban.common.widget.CircleImageView
|
||||
android:id="@+id/avatar"
|
||||
android:layout_width="90dp"
|
||||
android:layout_height="90dp"
|
||||
android:layout_marginStart="40dp"
|
||||
android:layout_marginTop="26dp"
|
||||
android:layout_marginEnd="40dp"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:src="@drawable/default_avatar"
|
||||
tools:visibility="visible" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/up_image"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"
|
||||
android:src="@drawable/icon_room_up_micro_boss"
|
||||
app:layout_constraintBottom_toBottomOf="@id/avatar"
|
||||
app:layout_constraintEnd_toEndOf="@id/avatar"
|
||||
app:layout_constraintStart_toStartOf="@id/avatar"
|
||||
app:layout_constraintTop_toTopOf="@id/avatar"
|
||||
tools:visibility="gone" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/lock_image"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"
|
||||
android:src="@drawable/icon_room_lock_micro_boss"
|
||||
android:visibility="invisible"
|
||||
app:layout_constraintBottom_toBottomOf="@id/avatar"
|
||||
app:layout_constraintEnd_toEndOf="@id/avatar"
|
||||
app:layout_constraintStart_toStartOf="@id/avatar"
|
||||
app:layout_constraintTop_toTopOf="@id/avatar"
|
||||
tools:visibility="visible" />
|
||||
|
||||
<com.yizhuan.erban.common.widget.CircleImageView
|
||||
android:id="@+id/iv_bg_leave_mode"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"
|
||||
android:src="@drawable/bg_leave_mode"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintBottom_toBottomOf="@id/avatar"
|
||||
app:layout_constraintEnd_toEndOf="@id/avatar"
|
||||
app:layout_constraintStart_toStartOf="@id/avatar"
|
||||
app:layout_constraintTop_toTopOf="@id/avatar" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_label_leave_mode"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:gravity="center"
|
||||
android:text="离开"
|
||||
android:textColor="#E6FFFFFF"
|
||||
android:textSize="16dp"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintBottom_toBottomOf="@id/avatar"
|
||||
app:layout_constraintEnd_toEndOf="@id/avatar"
|
||||
app:layout_constraintStart_toStartOf="@id/avatar"
|
||||
app:layout_constraintTop_toTopOf="@id/avatar" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/mute_image"
|
||||
android:layout_width="15dp"
|
||||
android:layout_height="15dp"
|
||||
android:layout_marginEnd="6dp"
|
||||
android:layout_marginBottom="6dp"
|
||||
android:scaleType="fitCenter"
|
||||
android:src="@drawable/icon_room_mute_micro"
|
||||
android:visibility="invisible"
|
||||
app:layout_constraintBottom_toBottomOf="@id/avatar"
|
||||
app:layout_constraintEnd_toEndOf="@id/avatar"
|
||||
tools:visibility="visible" />
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/ll_nick"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="17dp"
|
||||
android:gravity="center"
|
||||
android:paddingStart="5dp"
|
||||
android:paddingEnd="5dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/avatar">
|
||||
|
||||
|
||||
<TextView
|
||||
android:id="@+id/nick"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:ellipsize="end"
|
||||
android:fontFamily="sans-serif"
|
||||
android:gravity="center_vertical"
|
||||
android:maxWidth="120dp"
|
||||
android:maxLines="1"
|
||||
android:singleLine="true"
|
||||
android:text=""
|
||||
android:textColor="@color/white"
|
||||
android:textSize="14sp"
|
||||
tools:text="我我是名" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_attention"
|
||||
android:layout_width="50dp"
|
||||
android:layout_height="20dp"
|
||||
android:layout_marginStart="4dp"
|
||||
android:src="@drawable/single_room_pk_bg_attention" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
@@ -3,11 +3,11 @@
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="16dp"
|
||||
android:layout_marginTop="8dp"
|
||||
android:layout_marginEnd="12dp"
|
||||
android:layout_marginBottom="8dp"
|
||||
android:gravity="center_vertical">
|
||||
android:gravity="center_vertical"
|
||||
android:paddingStart="15dp"
|
||||
android:paddingEnd="15dp">
|
||||
|
||||
<com.yizhuan.erban.common.widget.CircleImageView
|
||||
android:id="@+id/iv_avatar"
|
||||
@@ -43,10 +43,14 @@
|
||||
android:layout_height="0dp"
|
||||
android:layout_weight="1" />
|
||||
|
||||
<CheckBox
|
||||
android:id="@+id/check_box"
|
||||
android:layout_width="22dp"
|
||||
android:layout_height="22dp"
|
||||
android:button="@drawable/selector_room_pk_search" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_select"
|
||||
android:layout_width="64dp"
|
||||
android:layout_height="24dp"
|
||||
android:background="@drawable/common_single_room_pk_btn_bg"
|
||||
android:gravity="center"
|
||||
android:includeFontPadding="false"
|
||||
android:text="选择"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="12sp" />
|
||||
</LinearLayout>
|
||||
|
@@ -4,5 +4,7 @@
|
||||
android:id="@+id/recycler_view"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
tools:listitem="@layout/item_micro_single_room_pk_boss"
|
||||
tools:itemCount="1"
|
||||
android:overScrollMode="never" />
|
||||
|
||||
|
@@ -1,31 +1,141 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="339dp"
|
||||
android:layout_height="233dp">
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
tools:background="#2196F3">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/cl_root"
|
||||
android:layout_width="339dp"
|
||||
android:layout_height="233dp"
|
||||
android:background="@drawable/bg_room_pk_board"
|
||||
android:orientation="horizontal"
|
||||
android:id="@+id/cl_micro_view"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_vs"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="21dp"
|
||||
android:src="@drawable/single_room_pk_ic_vs"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/iv_rule"
|
||||
android:layout_width="46dp"
|
||||
android:layout_height="18dp"
|
||||
android:layout_marginTop="6dp"
|
||||
android:background="@drawable/single_room_pk_bg_rule"
|
||||
android:gravity="center"
|
||||
android:includeFontPadding="false"
|
||||
android:text="规则"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="12dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/iv_vs" />
|
||||
|
||||
<com.opensource.svgaplayer.SVGAImageView
|
||||
android:id="@+id/svga_head_wear_blue"
|
||||
android:layout_width="135dp"
|
||||
android:layout_height="135dp"
|
||||
app:autoPlay="true"
|
||||
app:layout_constraintBottom_toBottomOf="@id/iv_blue_avatar"
|
||||
app:layout_constraintEnd_toEndOf="@id/iv_blue_avatar"
|
||||
app:layout_constraintStart_toStartOf="@id/iv_blue_avatar"
|
||||
app:layout_constraintTop_toTopOf="@id/iv_blue_avatar"
|
||||
app:loopCount="0"
|
||||
app:source="svga/single_headware.svga" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_blue_avatar"
|
||||
android:layout_width="90dp"
|
||||
android:layout_height="90dp"
|
||||
android:layout_marginTop="26dp"
|
||||
android:layout_marginEnd="40dp"
|
||||
android:src="@drawable/default_avatar"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_blue_nickname"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="17dp"
|
||||
android:text="房主的昵称房..."
|
||||
android:textColor="@color/white"
|
||||
android:textSize="14sp"
|
||||
app:layout_constraintEnd_toStartOf="@id/iv_find_him"
|
||||
app:layout_constraintHorizontal_chainStyle="packed"
|
||||
app:layout_constraintStart_toStartOf="@id/iv_blue_avatar"
|
||||
app:layout_constraintTop_toBottomOf="@id/iv_blue_avatar" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_find_him"
|
||||
android:layout_width="50dp"
|
||||
android:layout_height="20dp"
|
||||
android:layout_marginStart="4dp"
|
||||
android:src="@drawable/single_room_pk_bg_find_him"
|
||||
app:layout_constraintBottom_toBottomOf="@id/tv_blue_nickname"
|
||||
app:layout_constraintEnd_toEndOf="@id/iv_blue_avatar"
|
||||
app:layout_constraintStart_toEndOf="@id/tv_blue_nickname"
|
||||
app:layout_constraintTop_toTopOf="@id/tv_blue_nickname" />
|
||||
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/cl_pk_board"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/cl_micro_view"
|
||||
tools:contentDescription="PK记分板">
|
||||
|
||||
<View
|
||||
android:id="@+id/bg_pk_board"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginStart="45dp"
|
||||
android:layout_marginEnd="45dp"
|
||||
android:background="@drawable/single_room_pk_bg_board"
|
||||
app:layout_constraintDimensionRatio="568:168"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_pk"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="3dp"
|
||||
android:text="PK"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="14dp"
|
||||
app:layout_constraintEnd_toStartOf="@id/tv_time"
|
||||
app:layout_constraintHorizontal_chainStyle="packed"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_time"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="6dp"
|
||||
android:includeFontPadding="false"
|
||||
android:text="00:00"
|
||||
android:textColor="#fffff600"
|
||||
android:textSize="16dp"
|
||||
android:layout_marginStart="4dp"
|
||||
android:fontFamily="sans-serif"
|
||||
android:text="00:00:00"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="12dp"
|
||||
app:layout_constraintBaseline_toBaselineOf="@id/tv_pk"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="0.69"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
app:layout_constraintStart_toEndOf="@id/tv_pk" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_end_hint"
|
||||
@@ -42,115 +152,40 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<View
|
||||
android:id="@+id/view_help_anchor"
|
||||
android:layout_width="1dp"
|
||||
android:layout_height="1dp"
|
||||
android:layout_marginStart="72dp"
|
||||
android:layout_marginTop="33dp"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_help"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="6dp"
|
||||
android:src="@drawable/ic_room_pk_board_help"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="0.45"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_room_name_left"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="12dp"
|
||||
android:layout_marginTop="40dp"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="14dp"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:text="厅的名字七个字" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_room_name_right"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="40dp"
|
||||
android:layout_marginEnd="12dp"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="14dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:text="厅的名字七个字" />
|
||||
|
||||
<com.yizhuan.erban.common.widget.CircleImageView
|
||||
android:id="@+id/iv_avatar_left"
|
||||
android:layout_width="44dp"
|
||||
android:layout_height="44dp"
|
||||
android:layout_marginStart="30dp"
|
||||
android:layout_marginTop="10dp"
|
||||
android:src="@drawable/default_avatar"
|
||||
app:cborder_color="#FFFF4D73"
|
||||
app:cborder_width="1dp"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tv_room_name_left" />
|
||||
|
||||
<com.yizhuan.erban.common.widget.CircleImageView
|
||||
android:id="@+id/iv_avatar_right"
|
||||
android:layout_width="44dp"
|
||||
android:layout_height="44dp"
|
||||
android:layout_marginTop="10dp"
|
||||
android:layout_marginEnd="30dp"
|
||||
android:src="@drawable/default_avatar"
|
||||
app:cborder_color="#FF45C0FF"
|
||||
app:cborder_width="1dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tv_room_name_right" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_send_gift"
|
||||
android:layout_width="50dp"
|
||||
android:layout_height="18dp"
|
||||
android:layout_marginStart="8dp"
|
||||
android:background="@drawable/bg_room_pk_send_gift"
|
||||
android:gravity="center"
|
||||
android:includeFontPadding="false"
|
||||
android:text="助攻"
|
||||
android:textColor="#ffffffff"
|
||||
android:textSize="12dp"
|
||||
app:layout_constraintStart_toEndOf="@id/iv_avatar_left"
|
||||
app:layout_constraintTop_toTopOf="@id/iv_avatar_left" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_go_another_room"
|
||||
android:layout_width="50dp"
|
||||
android:layout_height="18dp"
|
||||
android:layout_marginEnd="8dp"
|
||||
android:background="@drawable/bg_room_pk_go_another_room"
|
||||
android:gravity="center"
|
||||
android:includeFontPadding="false"
|
||||
android:text="去围观"
|
||||
android:textColor="#ffffffff"
|
||||
android:textSize="12dp"
|
||||
app:layout_constraintEnd_toStartOf="@id/iv_avatar_right"
|
||||
app:layout_constraintTop_toTopOf="@id/iv_avatar_right" />
|
||||
|
||||
<ProgressBar
|
||||
android:id="@+id/pb_score"
|
||||
style="?android:attr/progressBarStyleHorizontal"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="12dp"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginEnd="8dp"
|
||||
android:layout_height="16dp"
|
||||
android:layout_marginStart="35dp"
|
||||
android:layout_marginTop="21dp"
|
||||
android:layout_marginEnd="35dp"
|
||||
android:max="100"
|
||||
android:progress="50"
|
||||
android:progressDrawable="@drawable/bg_room_pk_board_pb"
|
||||
app:layout_constraintBottom_toBottomOf="@id/iv_avatar_left"
|
||||
app:layout_constraintEnd_toStartOf="@id/iv_avatar_right"
|
||||
app:layout_constraintStart_toEndOf="@id/iv_avatar_left" />
|
||||
android:progressDrawable="@drawable/single_room_pk_bg_board_pb"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_red_star"
|
||||
android:layout_width="26dp"
|
||||
android:layout_height="26dp"
|
||||
android:layout_marginStart="15dp"
|
||||
android:src="@drawable/single_room_pk_ic_red_star"
|
||||
app:layout_constraintBottom_toBottomOf="@id/pb_score"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="@id/pb_score" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_blue_star"
|
||||
android:layout_width="26dp"
|
||||
android:layout_height="26dp"
|
||||
android:layout_marginEnd="15dp"
|
||||
android:src="@drawable/single_room_pk_ic_blue_star"
|
||||
app:layout_constraintBottom_toBottomOf="@id/pb_score"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="@id/pb_score" />
|
||||
|
||||
<com.opensource.svgaplayer.SVGAImageView
|
||||
android:id="@+id/svga_hot"
|
||||
@@ -158,17 +193,17 @@
|
||||
android:layout_height="27dp"
|
||||
android:layout_marginBottom="18dp"
|
||||
app:autoPlay="true"
|
||||
app:layout_constraintBottom_toBottomOf="@id/iv_details"
|
||||
app:layout_constraintEnd_toStartOf="@id/iv_avatar_right"
|
||||
app:layout_constraintBottom_toBottomOf="@id/pb_score"
|
||||
app:layout_constraintEnd_toStartOf="@id/iv_blue_star"
|
||||
app:layout_constraintHorizontal_bias="0"
|
||||
app:layout_constraintStart_toEndOf="@id/iv_avatar_left"
|
||||
app:layout_constraintStart_toEndOf="@id/iv_red_star"
|
||||
app:source="svga/room_pk_pb_indicator.svga" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_score_left"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="5dp"
|
||||
android:layout_marginStart="15dp"
|
||||
android:fontFamily="sans-serif"
|
||||
android:includeFontPadding="false"
|
||||
android:textColor="@color/white"
|
||||
@@ -182,7 +217,7 @@
|
||||
android:id="@+id/tv_score_right"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="5dp"
|
||||
android:layout_marginEnd="15dp"
|
||||
android:fontFamily="sans-serif"
|
||||
android:includeFontPadding="false"
|
||||
android:textColor="@color/white"
|
||||
@@ -192,92 +227,24 @@
|
||||
app:layout_constraintTop_toTopOf="@id/pb_score"
|
||||
tools:text="123456" />
|
||||
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_details"
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="20dp"
|
||||
android:scaleType="center"
|
||||
android:src="@drawable/ic_room_pk_top"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/pb_score" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_contribute_title"
|
||||
android:layout_width="53dp"
|
||||
android:layout_height="22dp"
|
||||
android:layout_marginTop="10dp"
|
||||
android:background="@drawable/bg_room_pk_contribute_text"
|
||||
android:gravity="center"
|
||||
android:includeFontPadding="false"
|
||||
android:text="神豪"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="14dp"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/iv_details" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_charm_title"
|
||||
android:layout_width="53dp"
|
||||
android:layout_height="22dp"
|
||||
android:layout_marginTop="24dp"
|
||||
android:background="@drawable/bg_room_pk_charm_text"
|
||||
android:gravity="center"
|
||||
android:includeFontPadding="false"
|
||||
android:text="魅力"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="14dp"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tv_contribute_title" />
|
||||
|
||||
|
||||
<com.yizhuan.erban.avroom.anotherroompk.RoomPKRankListView
|
||||
<com.yizhuan.erban.avroom.singleroompk.SingleRoomPKRankListView
|
||||
android:id="@+id/view_rank_list_contribute_left"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintBottom_toBottomOf="@id/tv_contribute_title"
|
||||
app:layout_constraintEnd_toStartOf="@id/tv_contribute_title"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="@id/tv_contribute_title" />
|
||||
android:layout_marginStart="12dp"
|
||||
android:layout_marginBottom="3dp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="@id/bg_pk_board" />
|
||||
|
||||
<com.yizhuan.erban.avroom.anotherroompk.RoomPKRankListView
|
||||
android:id="@+id/view_rank_list_charm_left"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintBottom_toBottomOf="@id/tv_charm_title"
|
||||
app:layout_constraintEnd_toStartOf="@id/tv_charm_title"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="@id/tv_charm_title" />
|
||||
|
||||
<com.yizhuan.erban.avroom.anotherroompk.RoomPKRankListView
|
||||
<com.yizhuan.erban.avroom.singleroompk.SingleRoomPKRankListView
|
||||
android:id="@+id/view_rank_list_contribute_right"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintBottom_toBottomOf="@id/tv_contribute_title"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toEndOf="@id/tv_contribute_title"
|
||||
app:layout_constraintTop_toTopOf="@id/tv_contribute_title" />
|
||||
|
||||
<com.yizhuan.erban.avroom.anotherroompk.RoomPKRankListView
|
||||
android:id="@+id/view_rank_list_charm_right"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintBottom_toBottomOf="@id/tv_charm_title"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toEndOf="@id/tv_charm_title"
|
||||
app:layout_constraintTop_toTopOf="@id/tv_charm_title" />
|
||||
|
||||
<androidx.constraintlayout.widget.Group
|
||||
android:id="@+id/group_rank"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:constraint_referenced_ids="view_rank_list_charm_right,view_rank_list_contribute_right,view_rank_list_charm_left,view_rank_list_contribute_left,tv_charm_title,tv_contribute_title" />
|
||||
android:layout_marginEnd="12dp"
|
||||
android:layout_marginBottom="3dp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="@id/bg_pk_board" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</FrameLayout>
|
||||
</LinearLayout>
|
||||
|
@@ -9,30 +9,30 @@
|
||||
|
||||
<FrameLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content">
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="bottom">
|
||||
|
||||
<com.yizhuan.erban.common.widget.CircleImageView
|
||||
android:id="@+id/iv_avatar_1"
|
||||
android:layout_width="32dp"
|
||||
android:layout_height="32dp"
|
||||
android:layout_gravity="bottom"
|
||||
android:layout_width="24dp"
|
||||
android:layout_height="24dp"
|
||||
android:layout_marginBottom="2dp"
|
||||
android:src="@drawable/bg_room_pk_rank_contribute_default" />
|
||||
android:src="@drawable/single_room_pk_bg_red_mic" />
|
||||
|
||||
<View
|
||||
android:id="@+id/view_bg_1"
|
||||
android:layout_width="32dp"
|
||||
android:layout_height="38dp"
|
||||
android:layout_gravity="bottom"
|
||||
android:layout_marginBottom="2dp"
|
||||
android:background="@drawable/bg_room_pk_rank_contribute1" />
|
||||
android:layout_width="24dp"
|
||||
android:layout_height="11dp"
|
||||
android:layout_marginTop="13dp"
|
||||
android:background="@drawable/single_room_pk_bg_mvp"
|
||||
android:visibility="gone" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_value_1"
|
||||
android:layout_width="32dp"
|
||||
android:layout_width="24dp"
|
||||
android:layout_height="10dp"
|
||||
android:layout_gravity="bottom"
|
||||
android:background="@drawable/bg_room_pk_contribute"
|
||||
android:layout_marginTop="28dp"
|
||||
android:gravity="center"
|
||||
android:includeFontPadding="false"
|
||||
android:textColor="@color/white"
|
||||
@@ -49,24 +49,25 @@
|
||||
|
||||
<com.yizhuan.erban.common.widget.CircleImageView
|
||||
android:id="@+id/iv_avatar_2"
|
||||
android:layout_width="32dp"
|
||||
android:layout_height="32dp"
|
||||
android:layout_width="24dp"
|
||||
android:layout_height="24dp"
|
||||
android:layout_marginBottom="2dp"
|
||||
android:src="@drawable/bg_room_pk_rank_contribute_default" />
|
||||
android:src="@drawable/single_room_pk_bg_red_mic" />
|
||||
|
||||
<View
|
||||
android:id="@+id/view_bg_2"
|
||||
android:layout_width="32dp"
|
||||
android:layout_height="32dp"
|
||||
android:layout_marginBottom="2dp"
|
||||
android:background="@drawable/bg_room_pk_rank_contribute2" />
|
||||
android:layout_width="24dp"
|
||||
android:layout_height="11dp"
|
||||
android:layout_marginTop="13dp"
|
||||
android:background="@drawable/single_room_pk_bg_mvp"
|
||||
android:visibility="gone" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_value_2"
|
||||
android:layout_width="32dp"
|
||||
android:layout_width="24dp"
|
||||
android:layout_height="10dp"
|
||||
android:layout_gravity="bottom"
|
||||
android:background="@drawable/bg_room_pk_contribute"
|
||||
android:layout_marginTop="28dp"
|
||||
android:gravity="center"
|
||||
android:includeFontPadding="false"
|
||||
android:textColor="@color/white"
|
||||
@@ -83,24 +84,24 @@
|
||||
|
||||
<com.yizhuan.erban.common.widget.CircleImageView
|
||||
android:id="@+id/iv_avatar_3"
|
||||
android:layout_width="32dp"
|
||||
android:layout_height="32dp"
|
||||
android:layout_width="24dp"
|
||||
android:layout_height="24dp"
|
||||
android:layout_marginBottom="2dp"
|
||||
android:src="@drawable/bg_room_pk_rank_contribute_default" />
|
||||
android:src="@drawable/single_room_pk_bg_red_mic" />
|
||||
|
||||
<View
|
||||
android:id="@+id/view_bg_3"
|
||||
android:layout_width="32dp"
|
||||
android:layout_height="32dp"
|
||||
android:layout_marginBottom="2dp"
|
||||
android:background="@drawable/bg_room_pk_rank_contribute2" />
|
||||
android:layout_width="24dp"
|
||||
android:layout_height="11dp"
|
||||
android:layout_marginTop="13dp"
|
||||
android:background="@drawable/single_room_pk_bg_mvp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_value_3"
|
||||
android:layout_width="32dp"
|
||||
android:layout_width="24dp"
|
||||
android:layout_height="10dp"
|
||||
android:layout_gravity="bottom"
|
||||
android:background="@drawable/bg_room_pk_contribute"
|
||||
android:layout_marginTop="28dp"
|
||||
android:gravity="center"
|
||||
android:includeFontPadding="false"
|
||||
android:textColor="@color/white"
|
||||
|
@@ -20,9 +20,15 @@
|
||||
android:id="@+id/micro_view"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="79dp"
|
||||
android:layout_marginTop="140dp"
|
||||
tools:background="@color/color_red" />
|
||||
|
||||
<com.yizhuan.erban.avroom.singleroompk.SingleRoomPKBoardView
|
||||
android:id="@+id/view_pk_board"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignTop="@id/micro_view" />
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/contribute_list"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -194,7 +200,7 @@
|
||||
android:id="@+id/vip_broadcast_view"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@id/micro_view"
|
||||
android:layout_below="@id/view_pk_board"
|
||||
android:layout_marginStart="15dp"
|
||||
android:layout_marginTop="10dp"
|
||||
android:visibility="gone" />
|
||||
@@ -203,7 +209,7 @@
|
||||
android:id="@+id/activity_img"
|
||||
android:layout_width="65dp"
|
||||
android:layout_height="75dp"
|
||||
android:layout_below="@id/micro_view"
|
||||
android:layout_below="@id/view_pk_board"
|
||||
android:layout_alignParentEnd="true"
|
||||
android:layout_marginTop="20dp"
|
||||
android:layout_marginEnd="15dp"
|
||||
|
@@ -1213,28 +1213,34 @@ public final class IMNetEaseManager {
|
||||
}
|
||||
switch (second) {
|
||||
case CUSTOM_MSG_SUB_ROOM_PK_INVITE:
|
||||
case CUSTOM_MSG_SUB_SINGLE_ROOM_PK_INVITE:
|
||||
if ((AvRoomDataManager.get().isRoomOwner() || AvRoomDataManager.get().isSuperAdmin()) &&
|
||||
!AvRoomDataManager.get().isOpenAnotherPKMode()) {
|
||||
noticeRoomEvent(msg, RoomEvent.ROOM_PK_INVITE);
|
||||
}
|
||||
break;
|
||||
case CUSTOM_MSG_SUB_ROOM_PK_ACCEPT:
|
||||
case CUSTOM_MSG_SUB_SINGLE_ROOM_PK_ACCEPT:
|
||||
noticeRoomEvent(msg, RoomEvent.ROOM_PK_ACCEPT);
|
||||
break;
|
||||
case CUSTOM_MSG_SUB_ROOM_PK_REFUSE:
|
||||
case CUSTOM_MSG_SUB_SINGLE_ROOM_PK_REFUSE:
|
||||
if (roomPkBean.getInviteUid() == AuthModel.get().getCurrentUid()) {
|
||||
noticeRoomEvent(msg, RoomEvent.ROOM_PK_REFUSE);
|
||||
SingleToastUtil.showToast(roomPkBean.getMsg());
|
||||
}
|
||||
break;
|
||||
case CUSTOM_MSG_SUB_ROOM_PK_UPDATE:
|
||||
case CUSTOM_MSG_SUB_SINGLE_ROOM_PK_UPDATE:
|
||||
AvRoomDataManager.get().roomPkLiveData.postValue(roomPkBean);
|
||||
break;
|
||||
case CUSTOM_MSG_SUB_ROOM_PK_FINISH:
|
||||
case CUSTOM_MSG_SUB_SINGLE_ROOM_PK_FINISH:
|
||||
noticeRoomEvent(msg, RoomEvent.ROOM_PK_FINISH);
|
||||
AvRoomDataManager.get().roomPkLiveData.postValue(null);
|
||||
break;
|
||||
case CUSTOM_MSG_SUB_ROOM_PK_NOTIFY:
|
||||
case CUSTOM_MSG_SUB_SINGLE_ROOM_PK_NOTIFY:
|
||||
noticeRoomEvent(msg, RoomEvent.ROOM_PK_NOTIFY);
|
||||
break;
|
||||
}
|
||||
|
@@ -113,7 +113,7 @@ public class CustomAttachment implements MsgAttachment {
|
||||
public static final int CUSTOM_MSG_ASSISTANT_MSG = 19;
|
||||
// 小秘书通用消息
|
||||
public static final int CUSTOM_MSG_ASSISTANT_COMMON_MSG = 191;
|
||||
|
||||
|
||||
// 房间信息更新
|
||||
public static final int CUSTOM_MSG_UPDATE_ROOM_INFO=20;
|
||||
public static final int CUSTOM_MSG_UPDATE_ROOM_INFO_GIFT=201;
|
||||
@@ -410,6 +410,13 @@ public class CustomAttachment implements MsgAttachment {
|
||||
public static final int CUSTOM_MSG_SUB_ROOM_PK_FINISH = 835;
|
||||
public static final int CUSTOM_MSG_SUB_ROOM_PK_NOTIFY = 836;
|
||||
|
||||
public static final int CUSTOM_MSG_SUB_SINGLE_ROOM_PK_INVITE = 837;// 个播pk发出邀请
|
||||
public static final int CUSTOM_MSG_SUB_SINGLE_ROOM_PK_REFUSE = 838;// 个播pk拒绝邀请
|
||||
public static final int CUSTOM_MSG_SUB_SINGLE_ROOM_PK_ACCEPT = 839;// 个播pk接受邀请
|
||||
public static final int CUSTOM_MSG_SUB_SINGLE_ROOM_PK_UPDATE = 8310;// 个播pk面板更新消息
|
||||
public static final int CUSTOM_MSG_SUB_SINGLE_ROOM_PK_FINISH = 8311;// 个播pk结束通知
|
||||
public static final int CUSTOM_MSG_SUB_SINGLE_ROOM_PK_NOTIFY = 8312;// 个播pk结束触发的飘屏通知
|
||||
|
||||
/**
|
||||
* 贵族
|
||||
*/
|
||||
|
@@ -79,6 +79,13 @@ public class RoomPkBean implements Serializable {
|
||||
//另一方魅力榜前三
|
||||
private List<RankBean> arRank;
|
||||
|
||||
//<-------------个播PK新增start--------------->
|
||||
//pk进行状态(1:pk中 2:惩罚中)
|
||||
private int pkState;
|
||||
//惩罚时间结束时间戳
|
||||
private Long penaltyEndTime;
|
||||
//<-------------个播PK新增end--------------->
|
||||
|
||||
/**
|
||||
* 通知相关字段
|
||||
*/
|
||||
@@ -90,7 +97,7 @@ public class RoomPkBean implements Serializable {
|
||||
private String winTitle;
|
||||
|
||||
@Data
|
||||
public static class RankBean implements Serializable{
|
||||
public static class RankBean implements Serializable {
|
||||
//uid
|
||||
private long uid;
|
||||
//昵称
|
||||
|
@@ -7,5 +7,6 @@ data class SimpleRoomInfo(
|
||||
val roomUid :Long = 0L,
|
||||
val erbanNo :Long = 0L,
|
||||
val avatar :String? = null,
|
||||
val crossPking:Boolean = false,
|
||||
var checked :Boolean = false
|
||||
) : Serializable
|
||||
|
@@ -129,7 +129,7 @@ object SingleRoomPKModel {
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@GET("/search/permitRoom")
|
||||
@GET("/search/singleRoom")
|
||||
fun searchPermitRoom(
|
||||
@Query("erbanNo") erbanNo: String?,
|
||||
@Query("roomUid") roomUid: Long?,
|
||||
|