小编Вла*_*ков的帖子

在您开始滚动之前,不会更新 Recycler 视图

我在聊天。我在接收和发送消息时无法显示消息。仅当我滚动此工作表时才会出现新消息。如果您使用该scrollToPosition (0)方法,则一切正常。但是在这种情况下,页面会滚动,并且在收到对话者的消息,这是不可接受的。我已经处理这个问题大概一个星期了,我无法解决它。我会很高兴得到任何帮助。我附上代码:

适配器初始化:

MessagesListAdapter<IMessage> adapter;
...
adapter = new MessagesListAdapter<IMessage>(user.getUser_id(), imageLoader);
Run Code Online (Sandbox Code Playgroud)

WebSocketListener(用于消息接收)

webSocket.addListener(new WebSocketListener() {
            ...

            @Override
            public void onFrame(WebSocket websocket, WebSocketFrame frame) throws Exception {
                Log.i("fg", "onFrame");
                JSONObject data = new JSONObject(frame.getPayloadText());
                Log.i("fg", "data: " + data.toString());

                if (data.has("data")) {

                    switch (data.getString("type")) {
                        case "Text":
                            Log.i("fg", "type text");
                            MyMessage myMessage = new MyMessage(data.getString("user_id"), data.getString("data"),
                                    data.getString("login"), data.getString("unix_time"), data.getString("user_id"), data.getString("avatar"));
                            Log.i("fg", "before " + Integer.toString(adapter.getItemCount()));
                            adapter.addToStart(myMessage, true);
                            adapter.notifyDataSetChanged();
                            break;
                        case "Location":
                            Log.i("fg", "type location"); …
Run Code Online (Sandbox Code Playgroud)

java android android-recyclerview

5
推荐指数
1
解决办法
2011
查看次数

标签 统计

android ×1

android-recyclerview ×1

java ×1