Android 如何在代码中而不是在xml中设置大小ImageView

Android 如何在代码中而不是在xml中设置大小ImageView,android,android-imageview,Android,Android Imageview,我想创建我的游戏板。我需要5x4动态图像视图。我对设置大小的ImageView有问题 这是我的代码: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TableRow tr[] = new TableRow[6]; TableLayout

我想创建我的游戏板。我需要5x4动态图像视图。我对设置大小的ImageView有问题

这是我的代码:

@Override
protected void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    TableRow tr[] = new TableRow[6];
    TableLayout tl;
    tl = (TableLayout) findViewById(R.id.layout);
    ImageView iv[][] = new ImageView[5][4];
    for(int i=0; i<5; i++)
    {
        tr[i] = new TableRow(this);
        if(i==0) tr[i].setPadding(0,10,0,5);
        else tr[i].setPadding(0,0,0,5);
        tl.addView(tr[i]);
        for(int j=0; j<4; j++)
        {

            iv[i][j] = new ImageView(this);
            TableRow.LayoutParams params = new TableRow.LayoutParams();
            if(j==0) params.setMargins(10, 0, 5, 0);
            else params.setMargins(0,0,5,0);
            params.height=71;
            params.width=71;
            params.weight=1;
            params.getLayoutDirection();
            iv[i][j].setLayoutParams(params);
            iv[i][j].setBackgroundColor(Color.rgb(255-15*(j-i),192-25*(i*j),3+5*j));
            tr[i].addView(iv[i][j]);

        }
    }
}
我尝试在px中设置大小,但我的解决方案无法在所有设置大小分辨率上工作。 我想要这个效果:


提前谢谢。

您可以从px计算dp,并使用它。。。