0

我正在做一个 android 应用程序,其中的图像彼此相邻,每个图像都有自己的宽度,我想将这些图像添加到一行中以适应屏幕宽度,对于我编写的每个要添加的代码的比例相同这个图像但仍然知道如何以编程方式设置宽度

    ImageView view = new ImageView(this);
    view.setImageResource(R.drawable.a1);

    ImageView view1 = new ImageView(this);
    view1.setImageResource(R.drawable.a2);

    ImageView view2 = new ImageView(this);
    view2.setImageResource(R.drawable.a3);


    LinearLayout my_root = (LinearLayout) findViewById(R.id.root_layout);
    LinearLayout child = new LinearLayout(this);
    child.setOrientation(LinearLayout.HORIZONTAL);

    child.addView(view);
    child.addView(view1);
    child.addView(view2);

    my_root.addView(child);

只有图像 1 和 2 出现,但第三个没有出现,因为屏幕宽度已完成任何帮助!谢谢 :)

4

2 回答 2

0

您必须使用权重参数来执行此操作。

试试下面的代码:

   ImageView view = new ImageView(this);
            view.setImageResource(R.drawable.a1);
    view.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, 1f));

        ImageView view1 = new ImageView(this);
        view1.setImageResource(R.drawable.a2);
 view1.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, 1f));

        ImageView view2 = new ImageView(this);
        view2.setImageResource(R.drawable.a3);
 view2.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, 1f));
于 2013-10-01T12:15:38.983 回答
0

使用布局参数在运行时设置视图的高度和宽度。像这样

  LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(50, 50);
    view .setLayoutParams(layoutParams);
于 2013-10-01T12:20:28.137 回答