当我设置的ImageView的大小内编程的TableRo

当我设置的ImageView的大小内编程的TableRo

本文介绍了安卓:错误,当我设置的ImageView的大小内编程的TableRow的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我尝试设置我的ImageView客体的大小,我总是同样的错误:

尝试写入到外地'廉政android.view.ViewGroup $ LayoutParams.width对空对象引用

我的一块code的:

  TableLayout TL =(TableLayout)findViewById(R.id.layoutDuNiveau);
    对于(INT J = 0; J< hauteurDuNiveau; J ++){
        TR的TableRow =新的TableRow(本);
        tr.setLayoutParams(新TableLayout.LayoutParams(TableLayout.LayoutParams.WRAP_CONTENT,TableLayout.LayoutParams.WRAP_CONTENT));
        的for(int i = 0; I< largeurDuNiveau;我++){
            imageViewDuNiveau [I] [J] =新ImageView的(本);
            imageViewDuNiveau [I] [J] .setImageResource(R.drawable.blanc);
            imageViewDuNiveau [I] [J] .requestLayout();
            。imageViewDuNiveau [I] [J] .getLayoutParams()宽= 20; // ERROR HERE
            。imageViewDuNiveau [I] [J] .getLayoutParams()高度= 20; // ERROR HERE
            开关(tableauDuNiveau [I] [J]){
                案件 '#':
                    imageViewDuNiveau [I] [J] .setImageResource(R.drawable.mur);
                默认:
            }
            tr.addView(imageViewDuNiveau [I] [J]);
        }
        tl.addView(TR);
    }


解决方案

由于在这里看到:

To fix issue call add ImageView to tr before accessing width and height :

tr.addView(imageViewDuNiveau[i][j]);
imageViewDuNiveau[i][j].getLayoutParams().width = 20;
imageViewDuNiveau[i][j].getLayoutParams().height = 20;

这篇关于安卓:错误,当我设置的ImageView的大小内编程的TableRow的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-24 18:20