有时候在控件个数不定的时候,需要通过new出控件的形式动态添加到view group里
这个时候 控件的位置就成了一个难题了
原来,就这么把image view添加进去了
for (int i = 0; i < strings.size(); i ++) { final RoundImageView iv = new RoundImageView(getActivity()); Glide.with(mContext).load(strings.get(i)).asBitmap().into(new SimpleTarget<Bitmap>() { @Override public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) { iv.setImageBitmap(resource); } }); ((ViewGroup)holder.itemView).addView(iv); }
但是效果不是很好,如下,控件间没有间隔
所以需要指定布局参数
for (int i = 0; i < strings.size(); i ++) { final RoundImageView iv = new RoundImageView(getActivity()); Glide.with(mContext).load(strings.get(i)).asBitmap().into(new SimpleTarget<Bitmap>() { @Override public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) { iv.setImageBitmap(resource); } }); LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT); params.setMargins(12, 12, 0, 12); iv.setLayoutParams(params); ((ViewGroup)holder.itemView).addView(iv); }
setmargins是设置了(左上右下)左,上,下分别间隔12dp,而WRAP_CONTENT指的是包裹住即可
现在效果如下
在Android开发中,当控件个数不确定时,通常需要动态创建并添加到视图组。本文介绍了如何通过`addView`方法添加布局,并详细说明了如何设置布局参数,特别是使用`setMargins`来设定控件之间的间隔,以达到理想的显示效果。

7689

被折叠的 条评论
为什么被折叠?



