0

如何创建这样的动态按钮视图?这里+添加按钮是一个静态的。其他按钮应该是动态创建的,如图所示。根据从数据库中检索到的数据,这还没有被创建,并且使用添加按钮可以添加新按钮。

动态按钮视图

4

1 回答 1

1

在您的 xml 文件中有一个垂直方向的线性布局。

在java类文件中声明为

ViewGroup lr = (ViewGroup)findViewVyId(R.id.dd)

for(int i = 0; i < x1; i++)
{
     lr1 = new LinearLayout(this);
     lr1.setOrientation(LinearLayout.HOIZONTAL);
     lr.addView(lr1);
     for(int j = 0; j < xx1; j++ )
     {
         if(i==0)
         {
        if(j == 0)
        {
          final View child = getLayoutInflater().inflate(R.layout.nw, null);
          lr.addView(child);
        }
        else
        {
            lr2 = new LinearLayout(this);
            lr2.setOrientation(LinearLayout.VERTICAL);

            for(int k = 0; k<2; k++)
            {
                final View b3 = new Button(this);
                lr2.addView(b3);
            }
            lr.addView(lr2);
        }
      }
      else
      {
        final View b2 = new Button(this);
        lr.addView(b2);
      }
      lr1.setId(main_cnt);
      main_cnt++;
          if(i == 2)
          {
        if(j == 2)
        {
            break;
        }
          }
     }
}

第一个 for 循环决定有多少个布局按垂直顺序排列,第二个 for 循环决定线性布局中有多少个按钮按水平顺序排列。main_cnt用于获取每个按钮的id

孩子的 xml 文件是我放置添加(大按钮)的地方

于 2012-06-23T05:07:50.417 回答