Java 以编程方式将多个图像添加到LinearLayout

Java 以编程方式将多个图像添加到LinearLayout,java,android,imageview,android-linearlayout,Java,Android,Imageview,Android Linearlayout,我正在尝试将多个图像视图添加到线性布局。LinearLayout是在xml中定义的,但我正在尝试用代码创建ImageView。到目前为止,我的代码只是在中间创建一个图像,即使我试图多次添加视图。 以下是我的主要方法: public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(save

我正在尝试将多个图像视图添加到线性布局。LinearLayout是在xml中定义的,但我正在尝试用代码创建ImageView。到目前为止,我的代码只是在中间创建一个图像,即使我试图多次添加视图。 以下是我的主要方法:

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    LinearLayout lay = (LinearLayout)findViewById(R.id.layout);
    ImageView[] views = new ImageView[10];
    for (int i=0;i<10;i++){
        views[i] = new ImageView(this);
        views[i].setImageResource(R.drawable.redeight);
        lay.addView(views[i]);
    }
}
}
public类MainActivity扩展了AppCompatActivity{
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
线性布局布局=(线性布局)findViewById(R.id.layout);
ImageView[]视图=新的ImageView[10];

for(inti=0;i在你的for循环中尝试这个

ImageView iv = new ImageView(this);
ViewGroup.LayoutParams params = iv.getLayoutParams();
params.height = ViewGroup.LayoutParams.WRAP_CONTENT; // Or a custom size
params.width = ViewGroup.LayoutParams.WRAP_CONTENT; // Or a custom size
iv.setLayoutParams(params);
iv.setImageResource(R.drawable.redeight);

views[i] = iv;
lay.addView(iv);

可能使用回收器视图,查看寻呼机?@zamsler你解决问题了吗?我也有同样的问题
ImageView iv = new ImageView(this);
ViewGroup.LayoutParams params = iv.getLayoutParams();
params.height = ViewGroup.LayoutParams.WRAP_CONTENT; // Or a custom size
params.width = ViewGroup.LayoutParams.WRAP_CONTENT; // Or a custom size
iv.setLayoutParams(params);
iv.setImageResource(R.drawable.redeight);

views[i] = iv;
lay.addView(iv);