我可以知道如何动态设置图像视图中的边距吗?
答案 0 :(得分:7)
您可能正在寻找类似的内容:http://developer.android.com/reference/android/view/View.html#setLayoutParams(android.view.ViewGroup.LayoutParams)
注意方法描述的这一部分:
这些供应参数指向此视图的父级,指定它的方式 应该安排
这意味着如果你在LinearLayout中有一个ImageView,你需要为方法提供LinearLayout.LayoutParams,如下所示:
ImageView image = new ImageView(this);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(100, 100);
params.setMargins(1, 1, 1, 1);
image.setLayoutParams(params);
然后你只需调用setMargins或设置LayoutParams的特定leftMargin,bottomMargin等属性。
答案 1 :(得分:0)
动态创建布局并设置其参数,因为setmargin()不能直接在imageView
上工作ImageView im; im = (ImageView) findViewById(R.id.your_image_in_XML_by_id); RelativeLayout.LayoutParams layout = new RelativeLayout.LayoutParams(im.getLayoutParams()); layout.setMargins(counter*27, 0, 0, 0);//left,right,top,bottom im.setLayoutParams(layout); im.setImageResource(R.drawable.yourimage)