android 拷贝list,Android-FirebaseListAdapter复制运行时布局更改

在开发一个使用Firebase的Android简单聊天应用时,作者遇到了一个问题:ListView中的消息气泡在首次加载时颜色显示正确,但滚动后不同用户的气泡颜色不再区分,都显示为当前用户颜色。问题可能与ListView的视图复用有关,需要检查ListView的适配器以确保在绑定数据时正确设置每个消息气泡的颜色。
摘要由CSDN通过智能技术生成

我在这里问是否有人知道我无法解决的问题的解决方法。

基本上,我正在使用Firebase作为练习在Android中编写一个简单的聊天应用程序。我ListView在主布局中使用了一个,并为每个“消息气泡”使用了一个简单的布局。问题来了:当我可视化从Firebase检索到的消息时,我会在运行时根据当前用户更改气泡的颜色,第一次加载时,每个气泡的颜色正确,但是通过上下滚动消息来实现,即使属于不同用户,更多气泡仍呈现“ ActiveUser”颜色,有什么想法吗?我将下面使用的代码留在下面

主布局ListView

android:id="@+id/list_of_messages"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:layout_above="@id/inputArea"

android:layout_alignParentStart="true"

android:layout_alignParentTop="true"

android:divider="@android:color/transparent"

android:dividerHeight="16dp"

android:paddingStart="15dp"

android:paddingBottom="5dp"

android:paddingEnd="15dp"

android:paddingTop="10dp"/>

消息提示框布局

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:padding="10dp"

android:id="@+id/message_bubble"

android:background="@drawable/normal_message_background">

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignParentTop="true"

android:layout_alignParentStart="true"

android:id="@+id/message_user"

android:textStyle="normal|bold" />

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_toEndOf="@id/message_user"

android:layout_marginStart="10dp"

android:id="@+id/message_time" />

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_below="@+id/message_user"

android:layout_alignParentStart="true"

android:layout_marginTop="5dp"

android:id="@+id/message_text"

android:textAppearance="@style/TextAppearance.AppCompat.Body1"

android:textSize="18sp" />

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值