久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

java - weeex[android]list的實現itemview沒有進行重用

瀏覽:137日期:2024-01-08 13:35:45

問題描述

list的實現使用的是RecyclerView,但getItemViewType返回的是dom的ref,ref在一個dom樹里應該是唯一的;

public int getItemViewType(int position) { return generateViewType(getChild(position)); }

private int generateViewType(WXComponent component) { long id; try { id = Integer.parseInt(component.getDomObject().getRef()); String type = component.getDomObject().getAttrs().getScope(); if (!TextUtils.isEmpty(type)) {if (mRefToViewType == null) { mRefToViewType = new ArrayMap<>();}if (!mRefToViewType.containsKey(type)) { mRefToViewType.put(type, id);}id = mRefToViewType.get(type); } } catch (RuntimeException e) { WXLogUtils.eTag(TAG, e); id = RecyclerView.NO_ID; WXLogUtils.e(TAG, 'getItemViewType: NO ID, this will crash the whole render system of WXListRecyclerView'); } return (int) id; }

問題解答

回答1:

進行重用要是同一個type的view才行.按照描述, 每個item的type都是唯一的,也就是彼此都不是同一個東西,代碼無法分辨具體能不能重用.這里應該有個混淆, 把其他地方需要的唯一標識(id)和RecyclerView需要的type混在一起了.如果希望兩個Item的View可以共用,這兩個View的type就應該是一樣的(它們的id可能不一樣)

回答2:

樓上+1 itemtype不一樣沒法重用

標簽: java
相關文章:
主站蜘蛛池模板: 闸北区| 南和县| 北碚区| 林周县| 乌审旗| 安化县| 钟祥市| 旺苍县| 普宁市| 长沙县| 汨罗市| 宁海县| 博白县| 滕州市| 文昌市| 临颍县| 东台市| 长乐市| 灵台县| 隆化县| 西畴县| 临夏市| 扎兰屯市| 昌平区| 峡江县| 靖江市| 龙海市| 博乐市| 义乌市| 西华县| 革吉县| 太谷县| 中西区| 营口市| 灌阳县| 丰镇市| 康乐县| 神池县| 中卫市| 宜兰县| 墨竹工卡县|