按下按钮后,我正在尝试创建按钮(这个按钮是用XML预制的)。 问题是,我可以在LinearLayout中执行此操作,但是当我每次使用buttoncreator方法运行时切换到RelativeLayout时,它会删除先前创建的按钮并创建一个新按钮。
更具特色; 我的buttoncreator方法
public void buttoncreator(String name,RelativeLayout.LayoutParams position,RelativeLayout layout){
positionrandomer(position);
final Button dummybutton = new Button(this);
dummybutton.setText(name);
//these are here for test,it works but still i have the same problem
position.addRule(RelativeLayout.BELOW,R.id.button1);
position.addRule(RelativeLayout.BELOW,R.id.button2);
dummybutton.setLayoutParams(position);
layout.addView(dummybutton);
return;
}
(位置randomer是一种设置随机边距的方法)。
我称之为创作者方法的地方
Button luckbutton = (Button) findViewById(R.id.button1);
luckbutton.setOnClickListener(new Button.OnClickListener(){
public void onClick(View arg0) {
name="Blue";
buttoncreator(name,position,layout);
name="Blu4e";
buttoncreator(name,position,layout);
}
});
所以,我的目的是在1个按钮上创建2个按钮,但它只创建1.(实际上,它创建第一个然后删除它并创建第二个)。
最近有一些我对RelativeLayouts不理解的东西, 我做错了什么?
提前谢谢
答案 0 :(得分:0)
我可以建议你一个解决方法来做你想要的事情。为什么不在xml文件中创建按钮,并在onCreate()
到View.GONE
以及按钮的onClick
中设置其可见性,将其可见性设置为{{ 1}}。我认为这会做你想要的事情,我认为你不会对View.VISIBLE
有问题。