2 o19830015 o19830015 于 2013.01.28 11:10 提问

android删除动态生成的按钮

实现生成一些button,数量取决于用户(用户点击按钮,就会生成一个)

具体代码:

 RelativeLayout layout = (RelativeLayout) findViewById(R.id.layoutcprompt);
    RelativeLayout.LayoutParams OBJ = new RelativeLayout.LayoutParams (140,80);
    if ((commandsi%6)==0) {adjust=adjust+86; commandsi=1;}
    OBJ.leftMargin =(140*(commandsi-1))+10;
    OBJ.topMargin =250+adjust;
    Button command = new Button(this);
    command.setLayoutParams(OBJ);
    command.setId(ID);
    command.setText(edittxt.getText().toString());
    edittxt.setText("");
    command.setBackgroundResource(R.drawable.costum_button);
    command.setTextColor(Color.WHITE);
    command.setTextSize(14);
    layout.addView(command);
    command.setOnClickListener(new View.OnClickListener() {
        public void onClick(View view) {
            Button b = (Button)view;
            scommand=b.getText().toString();
        }
    });
    command.setVisibility(View.VISIBLE);

现在还要实现移除这些button,我给每个都有单独的id,但是不知道怎么移除:/。

谢谢。

2个回答

xinyoulingxi1_tong
xinyoulingxi1_tong   2013.01.28 14:03
已采纳
ViewGroup layout = (ViewGroup) command.getParent();
if(null!=layout) //for safety only  as you are doing onClick
layout.removeView(command);

试试这个。

o19830015
o19830015 非常感谢,解决了。
大约 5 年之前 回复
cytown
cytown   2013.01.28 11:59
View v = findViewById(id);
ViewGroup vg = (ViewGroup) v.getParent();
vg.removeView(v);
o19830015
o19830015 谢谢你的回答,不过我用另外一个方法解决了。
大约 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!