主播卡片bugfix

This commit is contained in:
huangjian
2022-08-03 16:45:47 +08:00
parent fb1f57bb0d
commit 276bd4ba4e
4 changed files with 25 additions and 9 deletions

View File

@@ -344,6 +344,7 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
.observeOn(AndroidSchedulers.mainThread())
.subscribe(aLong -> EventBus.getDefault().post(new RefreshHomeDataEvent()));
homeViewModel.requestAnchorInfo();
homeViewModel.getAnchorInfoLiveData().observe(this, anchorInfo -> {
if (anchorInfo != null) {
anchorCardView.setAnchorInfo(anchorInfo);

View File

@@ -24,6 +24,7 @@ import com.yizhuan.erban.audio.helper.AudioPlayerHelper
import com.yizhuan.erban.audio.helper.OnPlayListener
import com.yizhuan.erban.avroom.activity.AVRoomActivity
import com.yizhuan.erban.databinding.LayoutAnchorCardViewBinding
import com.yizhuan.erban.ui.user.UserInfoActivity
import com.yizhuan.erban.ui.user.decorationsend.UserInfoSkillDecoration
import com.yizhuan.erban.ui.utils.load
import com.yizhuan.erban.ui.utils.loadAvatar
@@ -32,6 +33,7 @@ import com.yizhuan.xchat_android_core.statistic.StatisticManager
import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol
import com.yizhuan.xchat_android_core.user.bean.UserInfo
import com.yizhuan.xchat_android_core.user.bean.UserInfoSkillEntity
import com.yizhuan.xchat_android_core.utils.subAndReplaceDot
import com.yizhuan.xchat_android_library.utils.ListUtils
import com.yizhuan.xchat_android_library.utils.SingleToastUtil
import io.reactivex.Observable
@@ -61,7 +63,7 @@ class AnchorCardView @JvmOverloads constructor(
LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)
)
binding.recyclerviewSkillCard.adapter = object :
BaseQuickAdapter<String, BaseViewHolder>(R.layout.item_userinfo_skill_abspicture) {
BaseQuickAdapter<String, BaseViewHolder>(R.layout.item_anchor_card_skill_abspicture) {
override fun convert(helper: BaseViewHolder, item: String) {
helper.getView<ImageView>(R.id.iv_skill_picture).load(item)
}
@@ -87,8 +89,11 @@ class AnchorCardView @JvmOverloads constructor(
)
initVoiceShow(it.voiceCard)
binding.ivAvatar.loadAvatar(it.avatar)
binding.tvNick.text = it.nick
binding.tvSignature.text = it.signture
binding.ivAvatar.setOnClickListener { _ ->
UserInfoActivity.Companion.start(context, it.uid)
}
binding.tvNick.text = it.nick.subAndReplaceDot(7)
binding.tvSignature.text = it.userDesc
if (it.gender == UserInfo.GENDER_MALE) {
binding.ivGender.setImageResource(R.drawable.ic_gender_male)
} else {
@@ -96,6 +101,8 @@ class AnchorCardView @JvmOverloads constructor(
}
binding.tvGoRoom.setOnClickListener { _ ->
AVRoomActivity.start(context, it.uid)
isVisible = false
stopAudio()
StatisticManager.Instance()
.onEvent(
StatisticsProtocol.EVENT_PERSONALSHOW_TOP_CARD_ROOM_CLICK,
@@ -114,11 +121,12 @@ class AnchorCardView @JvmOverloads constructor(
@SuppressLint("SetTextI18n")
private fun intervalRange() {
disposable?.dispose()
val finalCount = count
disposable = Observable.intervalRange(0, count + 1, 0, 1, TimeUnit.SECONDS)
.observeOn(AndroidSchedulers.mainThread())
.doOnNext { aLong ->
count -= 1
binding.tvTime.text = "剩余${10 - aLong}s"
binding.tvTime.text = "剩余${finalCount - aLong}s"
}
.doOnComplete {
if (!audioPlaying) isVisible = false

View File

@@ -50,22 +50,29 @@
android:layout_width="0dp"
android:layout_height="14dp"
android:layout_marginLeft="12dp"
android:layout_marginEnd="6dp"
android:layout_marginRight="12dp"
android:requiresFadingEdge="horizontal"
app:layout_constraintBottom_toBottomOf="@id/tv_nick"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintEnd_toStartOf="@id/tv_time"
app:layout_constraintStart_toEndOf="@id/tv_nick"
app:layout_constraintTop_toTopOf="@id/tv_nick" />
<TextView
android:id="@+id/tv_signature"
android:layout_width="wrap_content"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="27dp"
android:gravity="start"
android:lines="1"
android:ellipsize="end"
android:textColor="@color/color_999999"
android:textSize="12sp"
app:layout_constraintBottom_toTopOf="@id/ll_audio"
app:layout_constraintEnd_toStartOf="@id/tv_go_room"
app:layout_constraintStart_toStartOf="@id/tv_nick"
app:layout_constraintTop_toBottomOf="@id/tv_nick"
tools:text="用户签名,就这样吧巴啦啦…" />
tools:text="用户签名,就这就这样吧巴啦啦就这样吧巴啦啦样吧巴啦啦…" />
<LinearLayout
android:id="@+id/ll_audio"
@@ -116,6 +123,7 @@
android:id="@+id/tv_time"
android:layout_width="48dp"
android:layout_height="20dp"
android:layout_marginTop="2dp"
android:layout_marginEnd="8dp"
android:background="@drawable/shape_anchor_card_time"
android:gravity="center"
@@ -126,5 +134,4 @@
app:layout_constraintTop_toTopOf="parent"
tools:text="剩余7s" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -8,7 +8,7 @@ data class AnchorInfo(
val erbanNo: Int = 0,
val gender: Int = 0,
val nick: String = "",
val signture: String = "",
val userDesc: String = "",
val uid: Long = 0,
val voiceCard: UserInfoSkillEntity? = null
)