聊天增加分类筛选

This commit is contained in:
ningwenqiang
2024-08-27 14:01:00 +08:00
parent cfb5a5aac2
commit 7fb4a10425
27 changed files with 721 additions and 42 deletions

View File

@@ -0,0 +1,11 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval"> <!-- 设置形状为圆形 -->
<solid android:color="#6DFF7C" /> <!-- 设置填充颜色 -->
<!-- 可以添加额外的属性如边框等 -->
<!-- <stroke
android:width="2dp"
android:color="#000000" /> -->
</shape>

View File

@@ -0,0 +1,10 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval"> <!-- 设置形状为圆形 -->
<solid android:color="#ffff4874" /> <!-- 设置填充颜色 -->
<stroke
android:width="2dp"
android:color="#30ff4874" /> <!-- 设置边框颜色为黑色并带有 70% 的不透明度 (BB 是 alpha 值) -->
</shape>

View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="20dp"/>
<solid android:color="@color/white"/>
</shape>

View File

@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<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:id="@+id/rc_conversation_item"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/chatTypeTv"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:layout_weight="1"
android:textColor="@color/colorMainTab"
tools:text="全部聊天" />
<ImageView
android:id="@+id/chatTypeImg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginEnd="20dp"
android:src="@mipmap/ic_chat_type_select" />
</LinearLayout>

View File

@@ -14,7 +14,6 @@
android:id="@+id/rc_conversation_portrait_rl"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginTop="@dimen/rc_margin_size_12"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
@@ -180,6 +179,7 @@
android:layout_marginBottom="@dimen/rc_margin_size_12"
android:src="@drawable/rc_read_receipt"
android:visibility="gone"
tools:visibility="visible"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/rc_conversation_no_disturb"
app:layout_goneMarginRight="@dimen/rc_margin_size_12" />

View File

@@ -0,0 +1,156 @@
<?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/rc_conversation_item"
android:layout_width="match_parent"
android:layout_height="@dimen/rc_conversation_item_height">
<com.yunbao.common.views.weight.ClipPathCircleImage
android:id="@+id/rc_conversation_portrait"
android:layout_width="54dp"
android:layout_height="54dp"
android:layout_marginTop="12dp"
android:scaleType="centerCrop"
android:src="@mipmap/beauty_jingbai"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/rc_conversation_live_online"
android:layout_width="12dp"
android:layout_height="12dp"
android:layout_marginTop="1dp"
android:layout_marginEnd="1dp"
android:layout_centerInParent="true"
android:src="@drawable/green_dot"
app:layout_constraintEnd_toEndOf="@+id/rc_conversation_portrait"
app:layout_constraintTop_toTopOf="@+id/rc_conversation_portrait" />
<TextView
android:id="@+id/rc_conversation_title"
style="@style/TextStyle.Alignment"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:layout_marginTop="4dp"
android:ellipsize="end"
android:maxWidth="120dp"
android:maxLines="1"
android:textColor="@color/rc_text_main_color"
android:textSize="13dp"
app:layout_constraintStart_toEndOf="@+id/rc_conversation_portrait"
app:layout_constraintTop_toTopOf="@+id/rc_conversation_portrait"
tools:text="张三11111111111111111111111" />
<TextView
android:id="@+id/rc_conversation_live_status"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/bg_main_message_chat_list_live_timer"
android:paddingStart="5dp"
android:paddingTop="2dp"
android:paddingEnd="3dp"
android:paddingBottom="3dp"
android:singleLine="true"
android:textColor="#EC70FD"
android:layout_marginStart="12dp"
android:textSize="10sp"
app:layout_constraintTop_toTopOf="@+id/rc_conversation_title"
app:layout_constraintBottom_toBottomOf="@+id/rc_conversation_title"
app:layout_constraintStart_toEndOf="@+id/rc_conversation_title"
android:visibility="gone"
tools:text="看直播10min"
tools:visibility="visible" />
<TextView
android:id="@+id/rc_conversation_date"
style="@style/TextStyle.Alignment"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="3 月 22 日"
android:layout_marginEnd="12dp"
app:layout_constraintTop_toTopOf="@+id/rc_conversation_title"
app:layout_constraintBottom_toBottomOf="@+id/rc_conversation_title"
app:layout_constraintEnd_toEndOf="parent"
android:textColor="@color/rc_auxiliary_color"
android:textSize="@dimen/rc_font_nav_or_date_size"
/>
<TextView
android:id="@+id/rc_conversation_unread_tv"
android:layout_width="wrap_content"
android:layout_marginBottom="4dp"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="@+id/rc_conversation_portrait"
app:layout_constraintStart_toStartOf="@+id/rc_conversation_title"
android:ellipsize="end"
android:maxLines="1"
tools:text="[已读]"
android:textColor="@color/rc_secondary_color"
android:textSize="13dp" />
<TextView
android:id="@+id/rc_conversation_content"
style="@style/TextStyle.Alignment"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:paddingStart="6dp"
android:paddingEnd="6dp"
android:ellipsize="end"
android:maxLines="1"
android:textColor="@color/rc_secondary_color"
android:textSize="13dp"
app:layout_constraintBottom_toBottomOf="@+id/rc_conversation_unread_tv"
app:layout_constraintEnd_toStartOf="@+id/rc_conversation_read_receipt"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toEndOf="@+id/rc_conversation_unread_tv"
app:layout_constraintTop_toTopOf="@+id/rc_conversation_unread_tv"
tools:text="你好朋友111111111111111111111" />
<TextView
android:id="@+id/rc_conversation_unread_count"
app:layout_constraintTop_toTopOf="@+id/rc_conversation_unread_tv"
app:layout_constraintBottom_toBottomOf="@+id/rc_conversation_unread_tv"
app:layout_constraintEnd_toEndOf="@+id/rc_conversation_date"
style="@style/TextStyle.Alignment"
app:layout_constraintDimensionRatio="1"
android:layout_width="18dp"
android:gravity="center"
android:layout_height="18dp"
android:background="@drawable/red_dot"
android:text="15"
android:textColor="@color/rc_white_color"
android:textSize="10sp" />
<ImageView
android:id="@+id/rc_conversation_no_disturb"
android:layout_width="wrap_content"
android:layout_marginEnd="@dimen/rc_margin_size_2"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="@+id/rc_conversation_unread_count"
app:layout_constraintBottom_toBottomOf="@+id/rc_conversation_unread_count"
app:layout_constraintEnd_toStartOf="@+id/rc_conversation_unread_count"
android:src="@drawable/rc_no_disturb"
android:visibility="gone"
tools:visibility="visible" />
<ImageView
android:id="@+id/rc_conversation_read_receipt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/rc_margin_size_2"
android:src="@drawable/rc_read_receipt"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="@+id/rc_conversation_no_disturb"
app:layout_constraintEnd_toStartOf="@+id/rc_conversation_no_disturb"
app:layout_constraintTop_toTopOf="@+id/rc_conversation_no_disturb"
app:layout_constraintVertical_bias="1.0"
tools:visibility="visible" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -0,0 +1,128 @@
<?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:layout_width="350dp"
android:layout_height="wrap_content"
android:background="@drawable/shape_white">
<TextView
android:id="@+id/chatTypeTv1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:layout_marginTop="20dp"
android:layout_weight="1"
android:textColor="#777777"
tools:textColor="@color/colorMainTab"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:text="@string/all_chats" />
<ImageView
android:id="@+id/chatTypeImg1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginEnd="20dp"
android:src="@mipmap/ic_chat_type_unselect"
tools:src="@mipmap/ic_chat_type_select"
app:layout_constraintBottom_toBottomOf="@+id/chatTypeTv1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@+id/chatTypeTv1" />
<TextView
android:id="@+id/chatTypeTv2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:layout_marginTop="20dp"
android:layout_weight="1"
android:textColor="#777777"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/chatTypeTv1"
android:text="@string/online_only" />
<ImageView
android:id="@+id/chatTypeImg2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:src="@mipmap/ic_chat_type_unselect"
app:layout_constraintBottom_toBottomOf="@+id/chatTypeTv2"
app:layout_constraintEnd_toEndOf="@+id/chatTypeImg1"
app:layout_constraintTop_toTopOf="@+id/chatTypeTv2" />
<TextView
android:id="@+id/chatTypeTv3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:layout_marginTop="20dp"
android:layout_weight="1"
android:textColor="#777777"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/chatTypeTv2"
android:text="@string/offline_only" />
<ImageView
android:id="@+id/chatTypeImg3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:src="@mipmap/ic_chat_type_unselect"
app:layout_constraintBottom_toBottomOf="@+id/chatTypeTv3"
app:layout_constraintEnd_toEndOf="@+id/chatTypeImg1"
app:layout_constraintTop_toTopOf="@+id/chatTypeTv3" />
<TextView
android:id="@+id/chatTypeTv4"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:layout_marginTop="20dp"
android:layout_weight="1"
android:textColor="#777777"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/chatTypeTv3"
android:text="@string/read_only" />
<ImageView
android:id="@+id/chatTypeImg4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:src="@mipmap/ic_chat_type_unselect"
app:layout_constraintBottom_toBottomOf="@+id/chatTypeTv4"
app:layout_constraintEnd_toEndOf="@+id/chatTypeImg1"
app:layout_constraintTop_toTopOf="@+id/chatTypeTv4" />
<TextView
android:id="@+id/chatTypeTv5"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:layout_marginTop="20dp"
android:layout_marginBottom="20dp"
android:layout_weight="1"
android:textColor="#777777"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/chatTypeTv4"
android:text="@string/unread_only" />
<ImageView
android:id="@+id/chatTypeImg5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:src="@mipmap/ic_chat_type_unselect"
app:layout_constraintBottom_toBottomOf="@+id/chatTypeTv5"
app:layout_constraintEnd_toEndOf="@+id/chatTypeImg1"
app:layout_constraintTop_toTopOf="@+id/chatTypeTv5" />
</androidx.constraintlayout.widget.ConstraintLayout>

Binary file not shown.

After

Width:  |  Height:  |  Size: 642 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 542 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -1474,4 +1474,11 @@ Limited ride And limited avatar frame</string>
<string name="activity_msg_list_include">Include:</string>
<string name="message_chat_msg_look_live">看直播%dmin</string>
<string name="activity_msg_list_title_chat_records">Chat Records</string>
<string name="message_chat_msg_read_tip">[Read]</string>
<string name="message_chat_msg_unread_tip">[Unread]</string>
<string name="all_chats">All Chats</string>
<string name="online_only">Show Online Only</string>
<string name="offline_only">Show Offline Only</string>
<string name="read_only">Show Read Only</string>
<string name="unread_only">Show Unread Only</string>
</resources>

View File

@@ -1604,5 +1604,11 @@
<string name="live_end_view_ban_reason">違規原因:</string>
<string name="live_end_view_ban_content">處罰內容:</string>
<string name="live_end_view_ban_timer">處罰時間:</string>
<string name="message_chat_msg_read_tip">[已讀]</string>
<string name="message_chat_msg_unread_tip">[未讀]</string>
<string name="all_chats">全部聊天</string>
<string name="online_only">僅展示在線</string>
<string name="offline_only">僅展示離線</string>
<string name="read_only">僅展示已讀</string>
<string name="unread_only">僅展示未讀</string>
</resources>

View File

@@ -1412,5 +1412,11 @@ Limited ride And limited avatar frame</string>
<string name="dialog_gift_wall_text_personal_hal">Personal hal</string>
<string name="dialog_gift_wall_text_site_hal">Whole site hal</string>
<string name="dialog_gift_wall_text_honors">Honors</string>
<string name="message_chat_msg_read_tip">[Read]</string>
<string name="message_chat_msg_unread_tip">[Unread]</string>
<string name="all_chats">All Chats</string>
<string name="online_only">Show Online Only</string>
<string name="offline_only">Show Offline Only</string>
<string name="read_only">Show Read Only</string>
<string name="unread_only">Show Unread Only</string>
</resources>