Java 使用自定义类对象填充线性布局

Java 使用自定义类对象填充线性布局,java,android,scrollview,android-linearlayout,imagebutton,Java,Android,Scrollview,Android Linearlayout,Imagebutton,我正在尝试设计一个简单的应用程序,它可以水平滚动,并填充图像按钮 我能够填充列表,但前提是我手动有6个按钮。有没有一种方法可以用数组和循环来实现这一点?使用btn、btn1、btn2等设备感觉笨重 我的linearList被引用为mLinearList 我还没有设置一个听众 private void fillPaintingGallery() { ImageButton btn = new ImageButton(this); btn.setImageDrawa

我正在尝试设计一个简单的应用程序,它可以水平滚动,并填充图像按钮

我能够填充列表,但前提是我手动有6个按钮。有没有一种方法可以用数组和循环来实现这一点?使用btn、btn1、btn2等设备感觉笨重

我的linearList被引用为mLinearList

我还没有设置一个听众

private void fillPaintingGallery() {

        ImageButton btn = new ImageButton(this);
        btn.setImageDrawable(getResources().getDrawable(R.drawable.painting1));
        mLinearList.addView(btn);

        ImageButton btn1 = new ImageButton(this);
        btn1.setImageDrawable(getResources().getDrawable(R.drawable.painting2));
        btn1.setContentDescription(RenaissanceDatabase.description[1]);
        mLinearList.addView(btn1);

        ImageButton btn2 = new ImageButton(this);
        btn2.setImageDrawable(getResources().getDrawable(R.drawable.painting3));
        btn2.setContentDescription(RenaissanceDatabase.description[2]);
        mLinearList.addView(btn2);

        ImageButton btn3 = new ImageButton(this);
        btn3.setImageDrawable(getResources().getDrawable(R.drawable.painting4));
        btn3.setContentDescription(RenaissanceDatabase.description[3]);
        mLinearList.addView(btn3);

        ImageButton btn4 = new ImageButton(this);
        btn4.setImageDrawable(getResources().getDrawable(R.drawable.painting5));
        btn4.setContentDescription(RenaissanceDatabase.description[4]);
        mLinearList.addView(btn4);

        ImageButton btn5 = new ImageButton(this);
        btn5.setImageDrawable(getResources().getDrawable(R.drawable.painting6));
        btn5.setContentDescription(RenaissanceDatabase.description[5]);
        mLinearList.addView(btn5);





    }

谢谢你为什么不使用Gridview或Listview来满足你的需求

for (int i = 0; i < RenaissanceDatabase.description[].length; i++) {
        ImageButton btn = new ImageButton(this);
        int id = getResources().getIdentifier("yourpackagename:drawable/painting" + (i+1), null, null);
        btn.setImageDrawable(getResources().getDrawable(
                id));
        btn.setContentDescription(RenaissanceDatabase.description[i]);
        mLinearList.addView(btn);

    }
for(int i=0;i
安卓的“安卓”操作方式是使用ListView和适配器。ListView是保存项目列表的容器。适配器控制显示的内容以及显示方式

下面是如何填充列表的示例。您将修改该示例,使模板视图包含一个ImageButton,并且模型将具有图像uri和描述