Je veux créer une page comme celle-ci. ces 7 boutons existent déjà, mais si l'utilisateur souhaite ajouter plus de catégories (bouton), il peut utiliser le bouton + et le supprimer à l'aide du bouton - .
Bouton Créer/Supprimer onClick
de + button
et - button
comme ci-dessous:
public void onClick(View v) {
switch(v.getId()){
case (R.id.plusbutton):
Button myButton = new Button(this);
myButton.setText("Add Me");
LinearLayout ll = (LinearLayout)findViewById(R.id.buttonlayout);
LayoutParams lp = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
ll.addView(myButton, lp);
break;.
case (R.id.minusbutton):
Button myButton = new Button(this);
myButton.setText("Remove Me");
LinearLayout ll = (LinearLayout)findViewById(R.id.buttonlayout);
LayoutParams lp = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
ll.removeView(myButton, lp);
break;
}
}
c'est pour créer un bouton dynamiquement dans Android
LinearLayout row2 = (LinearLayout) findViewById(R.id.hll2);
Button ivBowl = new Button(this);
ivBowl.setText("hi");
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(70, 70);
layoutParams.setMargins(5, 3, 0, 0); // left, top, right, bottom
ivBowl.setLayoutParams(layoutParams);
row2.addView(ivBowl);
LinearLayout mainLayout = (LinearLayout)findViewById(R.id.yourlayoutidthatisonethepicture);
Button addButton =new Button(this);
addButton.setText("add");
mainLayout.addView(addButton);
supprimer est identique il suffit de changer cette "mainLayout.addView(addButton)
" pour supprimerVoir ou définir la visibilité du bouton sur View.GONE
C'est assez simple.
Button button1=new Button(context);
button1.setText("test");
button1.setId(id);
containerlayout.add(button1);
J'espère que cela vous aide.
Si vous souhaitez créer une vue dynamique (comme EditText, textview, etc.), utilisez simplement ce code et exécutez-le dans votre application.
MyActivity.Java://votre fichier Java
LinearLayout ll = (LinearLayout)findViewById(R.id.linearLayout1);
EditText et = new EditText(v.getContext());
et.setText("My new Edit Text);
et.setMinLines(1);
et.setMaxLines(3);
ll.addView(et);
En fichier XML:
<LinearLayout
Android:id="@+id/linearLayout1"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:layout_alignBottom="@+id/TextView01"
Android:layout_below="@+id/relativeLayout1"
Android:orientation="vertical" >