refactor(chat): 重构聊天界面为列表布局
- 将基础活动类从 BaseListActivity 更改为 BaseListFormLayoutNormalActivity - 添加 ActivityChatBinding 视图绑定支持 - 移除 WebView 和任务标题 TextView 组件 - 使用 RecyclerView 替代 WebView 显示聊天内容 - 调整 RecyclerView 的布局配置和滚动模式 - 修改聊天项底部间距从 20dp 增加到 30dp - 配置全屏显示模式和布局 ID 方法实现
这个提交包含在:
父节点
aba8c69a0c
当前提交
13e3afa8cb
@ -2,6 +2,7 @@ package com.nova.brain.glass.ui
|
|||||||
|
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
import com.nova.brain.glass.R
|
import com.nova.brain.glass.R
|
||||||
|
import com.nova.brain.glass.databinding.ActivityChatBinding
|
||||||
import com.nova.brain.glass.helper.OfflineCmdListener
|
import com.nova.brain.glass.helper.OfflineCmdListener
|
||||||
import com.nova.brain.glass.helper.OfflineCmdServiceHelper
|
import com.nova.brain.glass.helper.OfflineCmdServiceHelper
|
||||||
import com.nova.brain.glass.model.ChatItem
|
import com.nova.brain.glass.model.ChatItem
|
||||||
@ -10,9 +11,12 @@ import com.xuqm.base.adapter.BasePagedAdapter
|
|||||||
import com.xuqm.base.adapter.CommonPagedAdapter
|
import com.xuqm.base.adapter.CommonPagedAdapter
|
||||||
import com.xuqm.base.adapter.ViewHolder
|
import com.xuqm.base.adapter.ViewHolder
|
||||||
import com.xuqm.base.ui.BaseListActivity
|
import com.xuqm.base.ui.BaseListActivity
|
||||||
|
import com.xuqm.base.ui.BaseListFormLayoutNormalActivity
|
||||||
import io.noties.markwon.Markwon
|
import io.noties.markwon.Markwon
|
||||||
|
|
||||||
class ChatActivity : BaseListActivity<ChatItem, ChatVM>() {
|
class ChatActivity : BaseListFormLayoutNormalActivity<ChatItem, ChatVM, ActivityChatBinding>() {
|
||||||
|
override fun getLayoutId(): Int = R.layout.activity_chat
|
||||||
|
override fun fullscreen(): Boolean = true
|
||||||
private val listener = object : OfflineCmdListener {
|
private val listener = object : OfflineCmdListener {
|
||||||
override fun onOfflineCmd(cmd: String) {
|
override fun onOfflineCmd(cmd: String) {
|
||||||
runOnUiThread {
|
runOnUiThread {
|
||||||
|
|||||||
@ -1,32 +1,18 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<layout>
|
<layout>
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<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/main"
|
android:id="@+id/main"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:background="@color/app_color_black">
|
android:background="@color/app_color_black">
|
||||||
|
|
||||||
<TextView
|
<androidx.recyclerview.widget.RecyclerView
|
||||||
android:id="@+id/tvTaskHeader"
|
android:id="@+id/baseRecyclerView"
|
||||||
android:layout_width="0dp"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="match_parent"
|
||||||
android:text="130工序要求如下:"
|
android:overScrollMode="never" />
|
||||||
android:textColor="#ff40FF5E"
|
|
||||||
android:textSize="20sp"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toTopOf="parent" />
|
|
||||||
<WebView
|
|
||||||
android:id="@+id/content"
|
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="0dp"
|
|
||||||
android:layout_marginTop="10dp"
|
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toBottomOf="@+id/tvTaskHeader" />
|
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
</layout>
|
</layout>
|
||||||
@ -2,7 +2,7 @@
|
|||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginBottom="20dp"
|
android:layout_marginBottom="30dp"
|
||||||
android:paddingHorizontal="29dp"
|
android:paddingHorizontal="29dp"
|
||||||
android:paddingVertical="10dp"
|
android:paddingVertical="10dp"
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|||||||
正在加载...
在新工单中引用
屏蔽一个用户