设置其他布局参数imageview

时间:2014-03-19 10:59:32

标签: android android-imageview layoutparams

我想在Android上有一个图像,只有当我点击一个按钮时才会出现。所以我在onClick方法中创建了它,并使用以下代码设置其资源和位置:

public void createAddButton() {
    //create the image
    ImageView imageView = new ImageView(this);
    //setting image resource
    imageView.setImageResource(R.drawable.add_16);
    //setting image position : width and height
    imageView.setLayoutParams(
            new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT) );
}

但这只允许定义图像的宽度和高度。如果我想定义其他布局参数(例如android:layout_gravityandroid:marginLeft),我该怎么办?

2 个答案:

答案 0 :(得分:3)

LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(
  LinearLayout.LayoutParams.MATCH_PARENT, 
  LinearLayout.LayoutParams.WRAP_CONTENT);
lp.gravity = Gravity.CENTER;
lp.bottomMargin = ...
lp.leftMargin = ...
lp.rightMargin = ...
lp.topMargin = ...

imageView.setLayoutParams(lp);

答案 1 :(得分:1)

您必须使用LayoutParams对象来访问这些布局属性,如下所示......

    LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
    params.gravity = Gravity.CENTER;
    params.leftMargin = 10;

    imageView.setLayoutParams(params);