【发布时间】:2014-09-22 20:07:47
【问题描述】:
我正在尝试在运行时创建布局,然后我想在运行时使用循环添加一些图像视图。但问题是我使用 LayoutParams 给出的边距根本不起作用。我已经尝试并搜索了很多,但没有找到任何解决方案。我也附上我的代码。
RelativeLayout ll_main_image = new RelativeLayout(activity);
ll_main_image.setLayoutParams(new LayoutParams(
width,
width));
for (int i = 0; i < al.get(position).al.size(); i++) {
//creating layout for tags
ImageView view_tag = new ImageView(activity);
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
int int_margin_left = (int)(((Double.parseDouble(al.get(position).al.get(i).str_x_pos))/100)*width);
int int_margin_top = (int)(((Double.parseDouble(al.get(position).al.get(i).str_y_pos))/100)*width);
System.out.println("margins perc " + al.get(position).al.get(i).str_x_pos + " / " + al.get(position).al.get(i).str_y_pos + " / " + width);
System.out.println("margins " + int_margin_left + " / " + int_margin_top + " / " + width);
lp.setMargins(int_margin_left, int_margin_top, 0, 0);
view_tag.setLayoutParams(lp);
view_tag.setBackgroundResource(R.drawable.tag_light);
ll_main_image.addView(view_tag);
}
【问题讨论】:
标签: android imageview runtime margin