尝试在没有父视图的情况下复制视图 - Android



我有一个用于生成新布局的布局列表。

但是,问题是在将列表布局添加到新布局之前,我需要调用 removeView((,因为列表布局是子布局。调用此方法会从 UI 中删除看起来不太好的视图。

LinearLayout linearLayout = null;
for(LinearLayout cardView : selectedCardIDList){
viewHeight += cardView.getHeight();
if(viewHeight < 842){
ViewGroup viewGroup = ((ViewGroup)cardView.getParent());
viewGroup.removeView(cardView);
linearLayout = cardView;
pdfViewLayout.addView(linearLayout);
viewGroup.addView(cardView);
}
}

pdfViewLayout是我正在使用列表中的布局构建的布局。

我试图找到一种方法来从列表中复制布局,这样我认为它不会干扰我的 UI,但是调用((ViewGroup)linearLayout.getParent()).removeView(linearLayout);仍然将其从 UI 中删除,因为它使用相同的父级。

有没有办法在没有父视图的情况下制作副本? 谢谢

编辑 - 通过我的最新尝试,我在viewGroup.addView(cardView);行上再次收到"孩子已经有父母"错误

你可以这样做

  1. 创建空视图View duplicateview = new View();
  2. 将目标视图复制到已创建的新视图中view = "get your target view that you need to duplicate"//your view
  3. 因此,您要查找的视图在duplicateview中重复。

相关内容

最新更新