您好我在Android“GalleryView”中放置自定义布局我在我的getview()方法中有以下代码。 但是它给出了Exception 指定的子节点已经有了父节点。你必须调用removeView()请帮忙。
public View getView(int position, View convertView, ViewGroup parent) {
LinearLayout ll = new LinearLayout(mContext);
ll.setId(position*9);
ll.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
int padding = (int) Math.round( 2.5*density);
ll.setPadding(padding, padding, padding, padding);
ImageView iv = new ImageView(mContext);
iv= chanelViewArrayList.get(position).snapshotImageView;
iv.setLayoutParams(new LayoutParams(Math.round(100*density),Math.round(100*density)));
iv.setId(position);
ll.removeAllViews();
ll.addView(iv);
return ll;
}
答案 0 :(得分:1)
iv= chanelViewArrayList.get(position).snapshotImageView;
对于更多的一个位置是相同的。您无法添加已添加到某处的视图。 因此,确保此方法为每个孩子返回新视图。
尽可能粘贴代码。