为了账号安全,请及时绑定邮箱和手机立即绑定

在android中使用socket.io时如何在运行时获取视图?

在android中使用socket.io时如何在运行时获取视图?

浮云间 2022-07-27 20:51:52
我在前端有一个 android 应用程序,在后端有一个节点 js 套接字。我从socket.on活动中获得了活动中的聊天列表。此列表中的每个项目都有一个自定义视图,当收到套接字事件时,我需要使用不同的值更新此自定义视图。我怎样才能做到这一点?这是我的代码获取聊天列表时:final Handler mHandler04 = new Handler(Looper.getMainLooper());            mHandler04.post(new Runnable() {                @Override                public void run() {                    SocketManager.getInstance().getSocket().on("allchatres", new Emitter.Listener() {                        @Override                        public void call(final Object... args) {                            g.context.runOnUiThread(new Runnable() {                                @Override                                public void run() {                                    JSONArray jsonArray = (JSONArray) args[0];                                    Log.d(TAG, "run: " + jsonArray);                                        try {                                            for (int i = 0; i < jsonArray.length(); i++) {                                                createView(jsonArray.getJSONObject(i).getString("title"), jsonArray.getJSONObject(i).getString("body"));                                            }                                        } catch (JSONException e) {                                            e.printStackTrace();                                        }                                }                            });                        }                    });                }            }); 我在 logcat 中看到以下结果:child count : 0如何获得 LinearLayoutItemHolder 中的每个自定义视图?我想在另一个 socket.on 事件中更改 customView 值,但我不能。我搜索了很多,但没有发现任何有用的东西。任何建议都会有所帮助。
查看完整描述

1 回答

?
慕虎7371278

TA贡献1802条经验 获得超4个赞

最后,我找到了实现目标的最佳方法:使用 RecyclerView!

我在使用自定义视图时遇到了一些困难,所以我使用了回收器视图。


查看完整回答
反对 回复 2022-07-27
  • 1 回答
  • 0 关注
  • 84 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信