Java 以编程方式删除按钮

Java 以编程方式删除按钮,java,android,button,Java,Android,Button,在我的代码中,我以编程方式创建按钮,因为在解析文件之前,我不知道需要多少按钮 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(stri

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

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);
    }
buttons=newlinkedlist();
对于(int i=0;i
这很好,我只是想知道是否有一种快速方法可以在创建更多按钮之前删除所有这些按钮(当用户按下单独的按钮时,我会将按钮的值更改为新按钮)

您可以设置为不可见

myButton.setVisibility(View.INVISIBLE);
您可以设置为不可见

myButton.setVisibility(View.INVISIBLE);

你可以这样做

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

可在此处找到:

您可以这样做

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

在此处找到:

解决了另一个for循环的问题

for(int i=0; i< aList.size();i++)
    {
        Button btn;
        btn = buttons.get(i);
        layout.removeView(btn);
    }
for(int i=0;i
用另一个for循环解决了这个问题

for(int i=0; i< aList.size();i++)
    {
        Button btn;
        btn = buttons.get(i);
        layout.removeView(btn);
    }
for(int i=0;i
remove(按钮)是简单的答案。对于更复杂的答案,您可能需要在问题中添加更多代码和/或详细信息这些按钮需要完全删除还是仅仅更改文本以及它们的功能?与其创建一组按钮并在不需要时删除它们,不如解析文件并只创建所需的按钮?删除(按钮)这是一个简单的答案。对于更复杂的答案,您可能需要在问题中添加更多代码和/或详细信息这些按钮需要完全删除还是只是更改文本以及它们的作用?与其创建一堆按钮并在不需要时删除它们,不如解析文件并只创建按钮你需要什么?