Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

android dynamically add element from layout xml

How can I take the element myButton from this layout xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    <Button android:layout_width="wrap_content" android:text="Button" android:layout_height="wrap_content" android:id="@+id/myButton"></Button>
</LinearLayout>

and put it on the layout of my choice (via code) ?

** solution (thx aromero) **

LinearLayout view = (LinearLayout)LayoutInflater.from(this).inflate(R.layout.my_button, null);
// or LinearLayout buttonView = (LinearLayout)this.getLayoutInflater().inflate(R.layout.my_button, null);
Button myButton = (Button) view.findViewById(R.id.myButton);
view.removeView(myButton);

LinearLayout mainView = (LinearLayout)this.findViewById(R.id.mainLayout);
mainView.addView(myButton);
like image 702
Jacksonkr Avatar asked Aug 02 '11 03:08

Jacksonkr


1 Answers

View view = LayoutInflater.from(context).inflate(R.layout.my_layout);
Button button = (Button) view.findViewById(R.id.myButton);
....
aGroupView.addView(button);
like image 116
aromero Avatar answered Oct 09 '22 10:10

aromero