我正在使用Xamarin.Android开发聊天应用程序。每当我收到传入消息或外发消息时,我都会存储在静态集合中。从服务器接收消息或向服务器发送消息时没有问题。
我第一次打开聊天片段时,我能够在列表中为每个传入和传出的消息绑定视图,从聊天片段返回我将所有聊天详细信息存储在静态集合中。
当我打开聊天片段时,我会在列表中加载所有静态集合数据。之后当我收到传入消息时,我无法在列表中看到更新的视图,尽管它存储在静态集合中。当软键盘向上或向下移动时,如果我发送任何消息,我可以查看新到达的消息。
我在 RunOnUiThread 中更新的所有内容,并在更新了我已提供NotifyDataSetChanged()
的列表后。
请提供解决方案。
答案 0 :(得分:2)
我遇到了类似的问题,我的布局没有得到更新。但是,我曾经在任何地方触摸屏幕的那一刻,用于反映变化的布局。我有一个视图,我试图将其可见性更改为View.GONE。如果您遇到类似的问题,可以试试这个
view.postDelayed(new Runnable() {
public void run() {
view.setVisibility(View.GONE);
}
}, 0);
它对我有用。也许你的问题也是因为这个原因。