在运行时设置按钮

时间:2012-10-09 11:04:23

标签: android android-layout android-widget

我在运行时创建按钮,如下所示......

    Button newCategoryButton = new Button(this);   
    newCategoryButton.setText(catName);
    newCategoryButton.setWidth(30);
    newCategoryButton.setBackgroundResource(R.drawable.bnt);     

    LayoutParams lp = new LayoutParams(LayoutParams.WRAP_CONTENT,     LayoutParams.WRAP_CONTENT);

    ll.addView(newCategoryButton, lp);

但我的问题是,当我从那次活动回来时,它会消失。

我希望这个永久性的。另一个问题是如何在其他按钮上设置此按钮?

2 个答案:

答案 0 :(得分:2)

 LinearLayout.LayoutParams  layoutParams;
 LinearLayout  ll;
   Button newCategoryButton=new Button(this)
   newCategoryButton.setText("Push Me");
 layoutParams = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
 ll.addView(view, newCategoryButton); 

答案 1 :(得分:0)

您应该将此代码放在onResume()中,而不是onCreate()方法; - )

enter image description here

如果您想使用另一个按钮,您需要使用垂直方向的LinearLayout!

LinearLayout myll = (LinearLayout) findViewById(R.id.yourLinearLayout);
myll.setLayoutParams(LinearLayout.WRAP_CONTENT, LinearLayout.WRAP_CONTENT);
myll.setOrientation(LinearLayout.VERTICAL);
myll.addView(view, Button1); 
myll.addView(view, Button2);
setContentView(myll)