1

在我的代码中,我以编程方式创建按钮,因为在解析文件之前我不知道需要多少按钮

buttons= new LinkedList<Button>();
    for(int i=0; i< aList.size();i++)
    {
        Button btn = new Button(this);
        btn.setId(i);
        btn.setOnClickListener(this);
        btn.setText(stringList.get(i));
        btn.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
        buttons.add(btn);
        layout.addView(btn);
    }

这很好用,我只是想知道是否有一种快速的方法可以在创建更多按钮之前删除所有这些按钮(当用户按下单独的按钮时,我将按钮的值更改为新的)

4

3 回答 3

9

用另一个for循环解决了这个问题

for(int i=0; i< aList.size();i++)
    {
        Button btn;
        btn = buttons.get(i);
        layout.removeView(btn);
    }
于 2013-04-08T17:32:01.423 回答
6

你可以做这样的事情

View v = (View) findViewById(id);
((ViewManager)v.getParent()).removeView(v);

在这里找到:从布局中添加和删除视图

于 2013-04-01T23:39:55.320 回答
3

你可以设置隐形。

myButton.setVisibility(View.INVISIBLE);
于 2013-04-01T22:09:35.357 回答