feat:完成公聊厅-头条UI调整

This commit is contained in:
max
2024-07-04 19:01:24 +08:00
parent 5910e7c5fd
commit 549088c99e
8 changed files with 127 additions and 70 deletions

View File

@@ -99,20 +99,11 @@ class RoomHeadlineWidget : FrameLayoutRoomWidget {
}
private fun updateHeadline(data: HeadlineBean?) {
val content = data?.content
if (data?.isValid() == true && !content.isNullOrEmpty()) {
binding.tvHeadlineContent.text = content
binding.ivAvatar.loadAvatar(data.avatar)
binding.tvName.text = data.nick ?: ""
binding.tvMoney.text = data.payMoneyNum?.toString() ?: "0"
this.isVisible = true
} else {
binding.ivAvatar.setImageDrawable(null)
binding.tvHeadlineContent.text = ""
binding.tvName.text = ""
binding.tvMoney.text = "0"
this.isVisible = false
}
binding.tvHeadlineContent.text = data?.content ?: ""
binding.ivAvatar.loadAvatar(data?.avatar)
binding.tvName.text = "${data?.nick ?: ""} :"
binding.tvMoney.text = data?.payMoneyNum?.toString() ?: "0"
this.isVisible = data?.isValid() == true && !data.content.isNullOrEmpty()
}
override fun onStop() {

View File

@@ -8,7 +8,9 @@ import com.chwl.app.R
import com.chwl.app.base.BaseBindingActivity
import com.chwl.app.databinding.PublicChatMessageActivityBinding
import com.chwl.app.public_chat.ui.message.headline.HeadlineSendDialog
import com.chwl.app.ui.utils.loadAvatar
import com.chwl.core.initial.InitialModel
import com.chwl.core.public_chat_hall.bean.HeadlineBean
import com.chwl.library.annatation.ActLayoutRes
import com.chwl.library.utils.ResUtil
import com.chwl.library.utils.SingleToastUtil
@@ -56,7 +58,7 @@ class PublicChatRoomMessageActivity : BaseBindingActivity<PublicChatMessageActiv
}
private fun initEvent() {
mBinding?.layoutHeadline?.singleClick {
mBinding?.layoutHeadlineAdd?.singleClick {
HeadlineSendDialog().show(supportFragmentManager, "HEADLINE_SEND")
}
mBinding?.ivHeadline?.singleClick {
@@ -66,16 +68,16 @@ class PublicChatRoomMessageActivity : BaseBindingActivity<PublicChatMessageActiv
private fun initObserve() {
viewModel.headlineLiveData.observe(this) {
val content = it?.content
mBinding.tvHeadlineContent.text = content ?: ""
if (content.isNullOrEmpty()) {
mBinding.layoutHeadline.setBackgroundResource(R.drawable.public_chat_bg_headline_empty)
mBinding.tvHeadlineContent.isVisible = false
mBinding.groupHeadlineEmpty.isVisible = true
mBinding.tvHeadlineContent.text = it?.content ?: ""
mBinding.ivHeadlineUserAvatar.loadAvatar(it?.avatar)
mBinding.tvHeadlineUserName.text = "${it?.nick ?: ""} :"
mBinding.tvHeadlineMoney.text = it?.payMoneyNum?.toString() ?: "0"
if (it?.content.isNullOrEmpty()) {
mBinding.layoutHeadline.isVisible = false
mBinding.layoutHeadlineAdd.isVisible = true
} else {
mBinding.layoutHeadline.setBackgroundResource(R.drawable.public_chat_bg_headline)
mBinding.tvHeadlineContent.isVisible = true
mBinding.groupHeadlineEmpty.isVisible = false
mBinding.layoutHeadline.isVisible = true
mBinding.layoutHeadlineAdd.isVisible = false
}
}
viewModel.getCurrentHeadline()

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

View File

@@ -13,30 +13,28 @@
app:layout_constraintTop_toTopOf="parent" />
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/layout_headline"
android:id="@+id/layout_headline_add"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginHorizontal="@dimen/dp_2"
android:background="@drawable/public_chat_bg_headline_empty"
app:layout_constraintDimensionRatio="375:99"
app:layout_constraintDimensionRatio="371:101.5"
app:layout_constraintTop_toBottomOf="@id/title_bar">
<androidx.constraintlayout.widget.Guideline
android:id="@+id/line_headlien_text_top"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.504" />
<ImageView
android:id="@+id/iv_headline_empty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginEnd="@dimen/dp_3"
android:src="@drawable/public_chat_ic_headline_empty_add"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintEnd_toStartOf="@id/tv_headline_empty"
app:layout_constraintHeight_percent="0.128"
app:layout_constraintHorizontal_chainStyle="packed"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@id/line_headlien_text_top" />
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.587" />
<TextView
android:id="@+id/tv_headline_empty"
@@ -50,39 +48,6 @@
app:layout_constraintStart_toEndOf="@id/iv_headline_empty"
app:layout_constraintTop_toTopOf="@id/iv_headline_empty" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/line_headline_content_start"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.121" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/line_headline_content_top"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.106" />
<TextView
android:id="@+id/tv_headline_content"
android:layout_width="0dp"
android:layout_height="0dp"
android:gravity="center"
android:textColor="#FFFADF"
android:textSize="@dimen/dp_14"
android:visibility="gone"
app:autoSizeMaxTextSize="@dimen/dp_14"
app:autoSizeMinTextSize="@dimen/dp_8"
app:autoSizeStepGranularity="1px"
app:autoSizeTextType="uniform"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="@id/line_headline_content_start"
app:layout_constraintTop_toTopOf="@id/line_headline_content_top"
app:layout_constraintWidth_percent="0.816"
tools:text="Content"
tools:visibility="visible" />
<androidx.constraintlayout.widget.Group
android:id="@+id/group_headline_empty"
android:layout_width="wrap_content"
@@ -90,13 +55,112 @@
app:constraint_referenced_ids="iv_headline_empty,tv_headline_empty" />
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/layout_headline"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_1_5"
android:background="@drawable/public_chat_bg_headline"
android:visibility="gone"
app:layout_constraintTop_toBottomOf="@id/title_bar"
tools:visibility="visible">
<com.google.android.material.imageview.ShapeableImageView
android:id="@+id/iv_headline_user_avatar"
android:layout_width="@dimen/dp_25"
android:layout_height="@dimen/dp_25"
android:layout_marginStart="@dimen/dp_11"
android:layout_marginTop="@dimen/dp_17"
android:scaleType="centerCrop"
android:src="@drawable/default_avatar"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:shapeAppearance="@style/shape_circle" />
<ImageView
android:layout_width="@dimen/dp_28"
android:layout_height="@dimen/dp_28"
android:src="@drawable/public_chat_bg_headline_avatar_frame"
app:layout_constraintBottom_toBottomOf="@id/iv_headline_user_avatar"
app:layout_constraintEnd_toEndOf="@id/iv_headline_user_avatar"
app:layout_constraintStart_toStartOf="@id/iv_headline_user_avatar"
app:layout_constraintTop_toTopOf="@id/iv_headline_user_avatar" />
<TextView
android:id="@+id/tv_headline_user_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_5"
android:ellipsize="end"
android:maxWidth="@dimen/dp_150"
android:maxLines="1"
android:textColor="#F5EA8E"
android:textSize="@dimen/dp_14"
app:layout_constraintBottom_toBottomOf="@id/iv_headline_user_avatar"
app:layout_constraintStart_toEndOf="@id/iv_headline_user_avatar"
app:layout_constraintTop_toTopOf="@id/iv_headline_user_avatar"
tools:text="Name" />
<com.chwl.app.view.AutoMirroredImageView
android:id="@+id/iv_money_bg"
android:layout_width="@dimen/dp_40"
android:layout_height="@dimen/dp_16"
android:src="@drawable/public_chat_bg_headline_money"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tv_headline_money"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/dp_6"
android:maxLines="1"
android:text="0"
android:textColor="@color/white"
android:textSize="@dimen/dp_8"
app:layout_constraintBottom_toBottomOf="@id/iv_money_bg"
app:layout_constraintEnd_toEndOf="@id/iv_money_bg"
app:layout_constraintTop_toTopOf="@id/iv_money_bg" />
<ImageView
android:layout_width="@dimen/dp_10"
android:layout_height="@dimen/dp_10"
android:layout_marginEnd="@dimen/dp_2"
android:scaleType="fitCenter"
android:src="@drawable/icon_diamond"
app:layout_constraintBottom_toBottomOf="@id/iv_money_bg"
app:layout_constraintEnd_toStartOf="@id/tv_headline_money"
app:layout_constraintTop_toTopOf="@id/iv_money_bg" />
<TextView
android:id="@+id/tv_headline_content"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_13"
android:layout_marginTop="@dimen/dp_4"
android:layout_marginBottom="@dimen/dp_12"
android:textColor="#FFFADF"
android:textSize="@dimen/dp_14"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/iv_headline_user_avatar"
tools:text="Content" />
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.Barrier
android:id="@+id/barrier_headline_bottom"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:barrierDirection="bottom"
app:constraint_referenced_ids="layout_headline,layout_headline_add" />
<FrameLayout
android:id="@+id/fragment_message"
android:layout_width="match_parent"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@id/layout_headline" />
app:layout_constraintTop_toBottomOf="@id/barrier_headline_bottom" />
<ImageView
android:id="@+id/iv_headline"