-12

有人知道如何在 for 循环中为字母表(对于刽子手应用程序)创建按钮吗?
我不确定在 java 类中需要做什么以及在 xml 文件中需要做什么。

4

4 回答 4

1

您无需在XML文件中执行任何操作。这一切都可以在课堂上完成。

for(int i=0; i < x; i++) // where x is the size of the list containing your alphabet.
{
   Button button = new Button(this);
   button.setId(i);
   yourView.add(button);
}
于 2013-09-18T11:33:10.273 回答
1

干得好。但您还必须注意,您的布局必须是线性的,并且必须根据您希望按钮的排列方式设置方向。

如果您使用相对视图,按钮将相互堆叠,这是您最后一个循环显示的按钮。

LinearLayout layout = (LinearLayout) findViewById(R.id.rl_table_of_contents);

        LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(
                LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT);

        Button[] btn = new Button[your_array];
        for (int i = 0; i < your_array.length(); i++) {
            btn[i] = new Button(getApplicationContext());
            btn[i].setText("Button "+ i);
            //btn[i].setBackground();
            btn[i].setTextSize(20);
            //btn[i].setHeight(100);
            btn[i].setLayoutParams(param);
            btn[i].setPadding(15, 20, 15, 20);
            layout.addView(btn[i]);

            //btn[i].setOnClickListener(handleOnClick(btn[i]));

        }

View.OnClickListener handleOnClick(final Button button) {
    return new View.OnClickListener() {
        public void onClick(View v) {
        }
    };
}
于 2016-04-24T12:57:59.943 回答
0
int count=26;
    Button[] btnArray = new Button[26];

    LinearLayout layout=new LinearLayout(this);
    LinearLayout.LayoutParams params=new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);

    for(int i=0;i<count;i++){
        btnArray[i]=new Button(this);
        layout.addView(btnArray[i],params);

    }
于 2013-09-18T11:34:16.300 回答
-1
for(int i=0; i<n; i++)
{
   Button b = new Button(this);
   b.setId(i);
}
于 2013-09-18T11:29:54.980 回答