16

Links

I want to create a page like this. these 7 buttons are already exist but if user want to add more categories (button) then he can do using + button and delete using - button. Any idea or tutorial for making this?

5 Answers 5

25

Create/Remove button onClick of + button and - button as below:

  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;
           }
         }
Sign up to request clarification or add additional context in comments.

2 Comments

Thank you sir :) appreciate your help
what is buttonlayout? how to create that
10

this is for create button dynamically in 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);

Comments

4
LinearLayout mainLayout = (LinearLayout)findViewById(R.id.yourlayoutidthatisonethepicture);

Button addButton =new Button(this);
addButton.setText("add");

mainLayout.addView(addButton);

to remove is the same just change this "mainLayout.addView(addButton)" to removeView or setVisibility of button to View.GONE

2 Comments

Still not getting "R.id.yourlayoutidthatisonethepicture" please tell me
i m getting issues with height. i am using addButton.setHeight(20) but nothing happes , if u guide my why is so?
3

It's pretty simple.

    Button button1=new Button(context);
    button1.setText("test");
    button1.setId(id);
containerlayout.add(button1);

Hope this helps you.

Comments

1

If you want to create dynamic view (like EditText,textview etc) then just use this code and run it in your application.

MyActivity.java://your java file

 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);

In XML File:

 <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" >

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.